Initial commit
This commit is contained in:
130
Torque/SDK/lib/maxsdk40/IPointCache.h
Normal file
130
Torque/SDK/lib/maxsdk40/IPointCache.h
Normal file
@@ -0,0 +1,130 @@
|
||||
//-------------------------------------------------------------
|
||||
// Access to Point Cache
|
||||
//
|
||||
|
||||
|
||||
#ifndef __IPOINTCACHE__H
|
||||
#define __IPOINTCACHE__H
|
||||
|
||||
#include "iFnPub.h"
|
||||
|
||||
#define POINTCACHE_CLASS_ID Class_ID(0x21d07ae1, 0x48d30bec)
|
||||
#define POINTCACHEWSM_CLASS_ID Class_ID(0x21d07ae1, 0x48d30bed)
|
||||
|
||||
#define PARTICLECACHE_CLASS_ID Class_ID(0x21d07ae1, 0x48d30bee)
|
||||
|
||||
|
||||
enum { pointcache_params };
|
||||
|
||||
//enums for various parameters
|
||||
//note pb_record_file is no longer used and legacy
|
||||
//pb_disable_mods is no longer used and legacy
|
||||
//pb_fastcache is fast caching scheme but right now can potential cause crashes
|
||||
// or extremely slow conditions are systems that spawn particles
|
||||
enum {
|
||||
pb_time,pb_start_time,pb_end_time,pb_samples, pb_disable_mods, pb_cache_file, pb_record_file,pb_relative,pb_strength,pb_fastcache
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
class IPointCache;
|
||||
class IPointCacheWSM;
|
||||
class IParticleCache;
|
||||
|
||||
//***************************************************************
|
||||
//Function Publishing System stuff
|
||||
//****************************************************************
|
||||
#define POINTCACHE_INTERFACE Interface_ID(0x53b4409b, 0x18ee7cc8)
|
||||
|
||||
#define GetIPointCacheInterface(cd) \
|
||||
(IPointCache *)(cd)->GetInterface(POINTCACHE_INTERFACE)
|
||||
|
||||
#define POINTCACHEWSM_INTERFACE Interface_ID(0x53b4409b, 0x18ee7cc9)
|
||||
|
||||
#define GetIPointCacheWSMInterface(cd) \
|
||||
(IPointCacheWSM *)(cd)->GetInterface(POINTCACHEWSM_INTERFACE)
|
||||
|
||||
#define PARTICLECACHE_INTERFACE Interface_ID(0x53b4409b, 0x18ee7cd0)
|
||||
|
||||
#define GetIParticleCacheInterface(cd) \
|
||||
(IParticleCache *)(cd)->GetInterface(PARTICLECACHE_INTERFACE)
|
||||
|
||||
enum { pointcache_record, pointcache_setcache, pointcache_enablemods,pointcache_disablemods
|
||||
|
||||
|
||||
};
|
||||
//****************************************************************
|
||||
|
||||
|
||||
class IPointCache : public FPMixinInterface
|
||||
{
|
||||
public:
|
||||
|
||||
//Function Publishing System
|
||||
//Function Map For Mixin Interface
|
||||
//*************************************************
|
||||
BEGIN_FUNCTION_MAP
|
||||
VFN_0(pointcache_record, fnRecord);
|
||||
VFN_0(pointcache_setcache, fnSetCache);
|
||||
VFN_0(pointcache_enablemods, fnEnableMods);
|
||||
VFN_0(pointcache_disablemods, fnDisableMods);
|
||||
|
||||
END_FUNCTION_MAP
|
||||
|
||||
FPInterfaceDesc* GetDesc(); // <-- must implement
|
||||
|
||||
virtual void fnRecord()=0;
|
||||
virtual void fnSetCache()=0;
|
||||
virtual void fnEnableMods()=0;
|
||||
virtual void fnDisableMods()=0;
|
||||
|
||||
};
|
||||
|
||||
|
||||
class IPointCacheWSM : public FPMixinInterface
|
||||
{
|
||||
public:
|
||||
|
||||
//Function Publishing System
|
||||
//Function Map For Mixin Interface
|
||||
//*************************************************
|
||||
BEGIN_FUNCTION_MAP
|
||||
VFN_0(pointcache_record, fnRecord);
|
||||
VFN_0(pointcache_setcache, fnSetCache);
|
||||
VFN_0(pointcache_enablemods, fnEnableMods);
|
||||
VFN_0(pointcache_disablemods, fnDisableMods);
|
||||
|
||||
END_FUNCTION_MAP
|
||||
|
||||
FPInterfaceDesc* GetDesc(); // <-- must implement
|
||||
|
||||
virtual void fnRecord()=0;
|
||||
virtual void fnSetCache()=0;
|
||||
virtual void fnEnableMods()=0;
|
||||
virtual void fnDisableMods()=0;
|
||||
|
||||
};
|
||||
|
||||
class IParticleCache : public FPMixinInterface
|
||||
{
|
||||
public:
|
||||
|
||||
//Function Publishing System
|
||||
//Function Map For Mixin Interface
|
||||
//*************************************************
|
||||
BEGIN_FUNCTION_MAP
|
||||
VFN_0(pointcache_record, fnRecord);
|
||||
VFN_0(pointcache_setcache, fnSetCache);
|
||||
|
||||
END_FUNCTION_MAP
|
||||
|
||||
FPInterfaceDesc* GetDesc(); // <-- must implement
|
||||
|
||||
virtual void fnRecord()=0;
|
||||
virtual void fnSetCache()=0;
|
||||
|
||||
};
|
||||
|
||||
|
||||
#endif // __IPOINTCACHE__H
|
||||
Reference in New Issue
Block a user