Sly Engine
ParticleEmitterFactory Class Reference

#include <ParticleEmitterFactory.h>

Collaboration diagram for ParticleEmitterFactory:
Collaboration graph

Public Types

typedef ItemList::iterator StorageRef
 

Static Public Member Functions

static ParticleEmitter * CreateEmitter (ParticleEffect *pe, const Vect &pos, const Matrix &rot)
 
static void RecycleBurst (ParticleEmitter *p)
 
static void Terminate ()
 

Private Types

typedef std::list< ParticleEmitter * > ItemList
 

Private Member Functions

 ParticleEmitterFactory ()
 
 ParticleEmitterFactory (const ParticleEmitterFactory &)=delete
 
 ParticleEmitterFactory (ParticleEmitterFactory &&)=delete
 
ParticleEmitterFactory & operator= (const ParticleEmitterFactory &)=delete
 
ParticleEmitterFactory & operator= (ParticleEmitterFactory &&)=delete
 
 ~ParticleEmitterFactory ()=default
 
ParticleEmitter * privCreateParticleEmitter (ParticleEffect *pe, const Vect &pos, const Matrix &rot)
 
void privRecycleEmitter (ParticleEmitter *p)
 
void privTerminate ()
 

Static Private Member Functions

static ParticleEmitterFactory & Instance ()
 

Private Attributes

ParticleEmitterMemoryPool myEmitterPool
 
ItemList * activeItems
 

Static Private Attributes

static ParticleEmitterFactory * ptrInstance = nullptr
 

Member Typedef Documentation

◆ ItemList

◆ StorageRef

typedef ItemList::iterator ParticleEmitterFactory::StorageRef

Constructor & Destructor Documentation

◆ ParticleEmitterFactory() [1/3]

ParticleEmitterFactory::ParticleEmitterFactory ( )
private
Here is the caller graph for this function:

◆ ParticleEmitterFactory() [2/3]

ParticleEmitterFactory::ParticleEmitterFactory ( const ParticleEmitterFactory &  )
privatedelete

◆ ParticleEmitterFactory() [3/3]

ParticleEmitterFactory::ParticleEmitterFactory ( ParticleEmitterFactory &&  )
privatedelete

◆ ~ParticleEmitterFactory()

ParticleEmitterFactory::~ParticleEmitterFactory ( )
privatedefault

Member Function Documentation

◆ CreateEmitter()

static ParticleEmitter* ParticleEmitterFactory::CreateEmitter ( ParticleEffect *  pe,
const Vect &  pos,
const Matrix &  rot 
)
inlinestatic
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Instance()

static ParticleEmitterFactory& ParticleEmitterFactory::Instance ( )
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=() [1/2]

ParticleEmitterFactory& ParticleEmitterFactory::operator= ( const ParticleEmitterFactory &  )
privatedelete

◆ operator=() [2/2]

ParticleEmitterFactory& ParticleEmitterFactory::operator= ( ParticleEmitterFactory &&  )
privatedelete

◆ privCreateParticleEmitter()

ParticleEmitter * ParticleEmitterFactory::privCreateParticleEmitter ( ParticleEffect *  pe,
const Vect &  pos,
const Matrix &  rot 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ privRecycleEmitter()

void ParticleEmitterFactory::privRecycleEmitter ( ParticleEmitter *  p)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ privTerminate()

void ParticleEmitterFactory::privTerminate ( )
private
Here is the caller graph for this function:

◆ RecycleBurst()

static void ParticleEmitterFactory::RecycleBurst ( ParticleEmitter *  p)
inlinestatic
Here is the call graph for this function:

◆ Terminate()

static void ParticleEmitterFactory::Terminate ( )
inlinestatic
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ activeItems

ItemList* ParticleEmitterFactory::activeItems
private

◆ myEmitterPool

ParticleEmitterMemoryPool ParticleEmitterFactory::myEmitterPool
private

◆ ptrInstance

ParticleEmitterFactory * ParticleEmitterFactory::ptrInstance = nullptr
staticprivate

The documentation for this class was generated from the following files: