#include <Module.h>
Inherits MemoryPoolObject, and Snapshot.
Inherited by DrawableModule, and ObjectModule.
Public Member Functions | |
| Module (const ModuleData *moduleData) | |
| < this abstract class needs memory pool hooks | |
| virtual NameKeyType | getModuleNameKey () const =0 |
| NameKeyType | getModuleTagNameKey () const |
| virtual void | onObjectCreated () |
| virtual void | onDrawableBoundToObject () |
| virtual void | preloadAssets (TimeOfDay timeOfDay) |
| preload any assets we might have for this time of day | |
| virtual void | onDelete (void) |
Public Member Functions inherited from MemoryPoolObject | |
| void | deleteInstance () |
Public Member Functions inherited from Snapshot | |
| Snapshot (void) | |
| ~Snapshot (void) | |
Static Public Member Functions | |
| static ModuleData * | friend_newModuleData (INI *ini) |
Protected Member Functions | |
| const ModuleData * | getModuleData () const |
| virtual void | crc (Xfer *xfer) |
| virtual void | xfer (Xfer *xfer) |
| virtual void | loadPostProcess (void) |
Protected Member Functions inherited from MemoryPoolObject | |
| virtual | ~MemoryPoolObject () |
| void * | operator new (size_t s) |
| void | operator delete (void *p) |
| virtual MemoryPool * | getObjectMemoryPool ()=0 |
Common interface for thing modules, we want a single common base class for all the modules (either object or drawable) so that we can use a single module factory to handle instancing them ... it's just convenient this way
|
inline |
|
protectedvirtual |
Implements Snapshot.
Reimplemented in BehaviorModule, BodyModule, DrawableModule, ObjectHelper, and ObjectModule.
Definition at line 82 of file Module.cpp.
|
static |
Definition at line 64 of file Module.cpp.
|
inlineprotected |
|
pure virtual |
|
inline |
|
protectedvirtual |
load post process
Implements Snapshot.
Reimplemented in BehaviorModule, BodyModule, DrawableModule, ObjectHelper, and ObjectModule.
Definition at line 105 of file Module.cpp.
|
inlinevirtual |
onDelete() will be called on all modules contained by an object or drawable before the actual deletion of each of those modules happens
Reimplemented in ActiveBody, BattlePlanUpdate, BridgeBehavior, CostModifierUpgrade, DozerAIUpdate, HelixContain, JetAIUpdate, MissileAIUpdate, NeutronMissileUpdate, ObjectCreationUpgrade, OpenContain, OverchargeBehavior, OverlordContain, PowerPlantUpgrade, PropagandaTowerBehavior, RadarUpgrade, SpawnBehavior, SpyVisionUpdate, TunnelContain, and WorkerAIUpdate.
|
inlinevirtual |
this is called whenever a drawable is bound to the object. drawable is NOT guaranteed to be non-null.
Reimplemented in HordeUpdate, ParachuteContain, and W3DModelDraw.
|
inlinevirtual |
this is called after all the Modules for a given Thing are created; it allows Modules to resolve any inter-Module dependencies.
Reimplemented in AIUpdateInterface, AutoFindHealingUpdate, BattlePlanUpdate, BoneFXDamage, BoneFXUpdate, BunkerBusterBehavior, CashBountyPower, CleanupHazardUpdate, CommandButtonHuntUpdate, DemoTrapUpdate, GarrisonContain, HelixContain, JetAIUpdate, MobMemberSlavedUpdate, MobNexusContain, OverlordContain, ParticleUplinkCannonUpdate, PhysicsBehavior, PilotFindVehicleUpdate, PointDefenseLaserUpdate, PropagandaTowerBehavior, SlavedUpdate, SpectreGunshipDeploymentUpdate, SpectreGunshipUpdate, StickyBombUpdate, SupplyWarehouseDockUpdate, and TunnelContain.
|
inlinevirtual |
preload any assets we might have for this time of day
Reimplemented in W3DModelDraw.
|
protectedvirtual |
Xfer method Version Info: 1: Initial version
Implements Snapshot.
Reimplemented in BehaviorModule, BodyModule, DrawableModule, ObjectHelper, and ObjectModule.
Definition at line 92 of file Module.cpp.