/* MODULE : PRT (Particle system Library) AUTHOR : Frederic PHILIPPE UBI R&D FILE : PRT.h (Principal header file) */ #ifndef D_THROW_PRT #ifndef PRT_POINTPRT_H #define PRT_POINTPRT_H #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #include "cpa_expt.h" /* For Global declaration in C files : */ #ifdef PRT_GLOBALS #define PRT_EXTERN extern #else /* !PRT_GLOBALS */ #define PRT_EXTERN #endif /* !PRT_GLOBALS */ /* ----------------------------------------------------------------------------- INCLUDES FILES ----------------------------------------------------------------------------- */ #include "PrtSyst.h" #include "PrtSrc.h" #include "PrtEnv.h" /* ----------------------------------------------------------------------------- CONSTANT DECLARATION ----------------------------------------------------------------------------- */ /* ----------------------------------------------------------------------------- TYPES DEFINITION ----------------------------------------------------------------------------- */ /* bubble structure */ typedef struct PRT_tdstPointParticle_ { MTH_tdxReal xBirthDate; } PRT_tdstPointParticle; typedef struct PRT_tdstPointCommonData_ { GMT_tdxHandleToGameMaterial hMaterial; } PRT_tdstPointCommonData; /* ----------------------------------------------------------------------------- GLOBAL VARIABLE DECLARATION ----------------------------------------------------------------------------- */ /* ----------------------------------------------------------------------------- FUNCTIONS DECLARATION ----------------------------------------------------------------------------- */ extern CPA_EXPORT void PRT_fn_vCreatePointParticles ( PRT_tdstParticlesSystem *_p_stParticlesSystem, GMT_tdxHandleToGameMaterial _hMaterial ); extern CPA_EXPORT void PRT_fn_vDestructPointParticles ( PRT_tdstParticlesSystem *_p_stParticlesSystem ); extern CPA_EXPORT void PRT_fn_vSetGameMaterialPointParticles ( PRT_tdstParticlesSystem *_p_stParticlesSystem, GMT_tdxHandleToGameMaterial _hGameMaterial ); extern CPA_EXPORT void PRT_fn_vGeneratePointParticle ( MTH3D_tdstVector *_p_stParticlePosition, MTH3D_tdstVector *_p_stParticleSpeed, PRT_tdstPointParticle *_p_stPointParticle, PRT_tdstPointCommonData *_p_stPointCommonData, PRT_tdstParticlesSource *_p_stParticlesSource, struct POS_stCompletePosition *_p_stSourceMatrix, MTH_tdxReal _xTimeT ); extern CPA_EXPORT void PRT_fn_vMecaPointParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystem, PRT_tdstParticlesEnvironment *_p_stParticlesEnvironment, MTH_tdxReal _xTimeT, MTH_tdxReal _xDeltaT ); extern CPA_EXPORT void PRT_fn_vSourceGeneratePointParticle ( PRT_tdstParticlesSystem *_p_stParticlesSystem, PRT_tdstParticlesSource *_p_stParticlesSource, struct POS_stCompletePosition *_p_stSourceMatrix, MTH_tdxReal _xTimeT ); extern CPA_EXPORT void PRT_fn_vPreDrawPointParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystem ); #ifdef __cplusplus }; #endif /* __cplusplus */ #endif /* PRT_POINTPRT_H */ #endif /* D_THROW_PRT */