/*
  MODULE : PRT (Particle system Library)
  AUTHOR : Frederic PHILIPPE
           UBI R&D
  FILE : PRT.h (Principal header file)
*/
#ifndef D_THROW_PRT
 
#ifndef PRT_PRTMECA_H
#define PRT_PRTMECA_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"
 
#include "PointPrt.h"
#include "SegmtPrt.h"
#include "SprtPrt.h"
 
#define D_MSPrtSrc_StructureDefine
#include "Gam\Actions\MsPrtSrc.h"
 
 
/*
-----------------------------------------------------------------------------
CONSTANT DECLARATION
-----------------------------------------------------------------------------
*/
 
/*
-----------------------------------------------------------------------------
TYPES DEFINITION
-----------------------------------------------------------------------------
*/
 
/*
-----------------------------------------------------------------------------
GLOBAL VARIABLE DECLARATION
-----------------------------------------------------------------------------
*/
 
/*
-----------------------------------------------------------------------------
FUNCTIONS DECLARATION
-----------------------------------------------------------------------------
*/
 
extern CPA_EXPORT void PRT_fn_vDestructParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystem );
 
extern CPA_EXPORT void PRT_fn_vCopyCloneParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystemDst,
                                        PRT_tdstParticlesSystem *_p_stParticlesSystemSrc );
 
/*
extern CPA_EXPORT void PRT_fn_vMecaParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystem,
                                   PRT_tdstParticlesEnvironment *_p_stParticlesEnvironment,
                                   MTH_tdxReal _xTimeT,
                                   MTH_tdxReal _xDeltaT );
								   */
extern CPA_EXPORT void PRT_fn_vMecaParticlesSystem 
						( 
							tdstParticleGenerator *_p_stPrtGen,
							MTH_tdxReal _xTimeT,
							MTH_tdxReal _xDeltaT 
						);
 
 
 
extern CPA_EXPORT void PRT_fn_vSourceGenerateParticle 
						( 
							PRT_tdstParticlesSystem *_p_stParticlesSystem,
                            PRT_tdstParticlesSource *_p_stParticlesSource,
                            struct POS_stCompletePosition *_p_stSourceMatrix,
                            MTH_tdxReal _xTimeT 
						);
							
 
/*extern CPA_EXPORT void PRT_fn_vPreDrawParticlesSystem ( PRT_tdstParticlesSystem *_p_stParticlesSystem );*/
extern CPA_EXPORT void PRT_fn_vPreDrawParticlesSystem ( tdstParticleGenerator *_p_stPrtGen );
 
#ifdef __cplusplus
};
#endif /* __cplusplus */
 
#endif /* PRT_PRTMECA_H */
#endif /* D_THROW_PRT */
