27class MemoryManager : 
public MemoryManagerBase {
 
   46    int mMaxParticleManager;                               
 
   66    virtual void GarbageCollection() = 0; 
 
   68    virtual Effect* AllocEffect() = 0;          
 
   69    virtual void FreeEffect(
void* pObject) = 0; 
 
   70    virtual ulong GetNumAllocEffect() 
const = 0;  
 
   71    virtual ulong GetNumActiveEffect() 
const = 0; 
 
   72    virtual ulong GetNumFreeEffect() 
const = 0;   
 
   74    virtual Emitter* AllocEmitter() = 0;         
 
   75    virtual void FreeEmitter(
void* pObject) = 0; 
 
   76    virtual ulong GetNumAllocEmitter() 
const = 0;  
 
   77    virtual ulong GetNumActiveEmitter() 
const = 0; 
 
   78    virtual ulong GetNumFreeEmitter() 
const = 0;   
 
   80    virtual ParticleManager* AllocParticleManager() = 0; 
 
   81    virtual void FreeParticleManager(
void* pObject) = 0; 
 
   82    virtual ulong GetNumAllocParticleManager() 
const = 0;  
 
   83    virtual ulong GetNumActiveParticleManager() 
const = 0; 
 
   84    virtual ulong GetNumFreeParticleManager() 
const = 0;   
 
   86    virtual Particle* AllocParticle() = 0;        
 
   87    virtual void FreeParticle(
void* pObject) = 0; 
 
   88    virtual ulong GetNumAllocParticle() 
const = 0;  
 
   89    virtual ulong GetNumActiveParticle() 
const = 0; 
 
   90    virtual ulong GetNumFreeParticle() 
const = 0;   
 
   92    virtual void* AllocHeap(ulong size) = 0;