reman3/Rayman_X/cpa/public/PRT/PointPrt.h

106 lines
3.5 KiB
C

/*
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 */