83 if (
End())
return NULL;
98 if (
End())
return NULL;
100 if (
End())
return NULL;
A particle pool.
Definition: ParticlePool.h:29
virtual ~ParticlePool()
Destructor.
Definition: ParticlePool.h:46
PoolIterator pool_iterator_
The pool iterator.
Definition: ParticlePool.h:222
PoolList::iterator PoolIterator
Definition: ParticlePool.h:36
void LockLatestElement()
Locks the released particle pointed by the iterator.
Definition: ParticlePool.h:172
T * ReleaseElement()
Releases a locked particle.
Definition: ParticlePool.h:146
PoolList released_
List with released particles.
Definition: ParticlePool.h:207
std::list< T * > PoolList
Definition: ParticlePool.h:33
bool IsEmpty()
Checks if the pool is empty.
Definition: ParticlePool.h:56
void Clear()
Removes all particles.
Definition: ParticlePool.h:122
T * GetFirst()
Retrieves the first particle.
Definition: ParticlePool.h:81
size_t GetSize()
Retrieves the pool size.
Definition: ParticlePool.h:65
void AddElement(T *element)
Adds a particle to the pool.
Definition: ParticlePool.h:134
std::list< T * > & GetActiveElementsList()
Retrieves the list of released particles.
Definition: ParticlePool.h:196
bool End()
Checks if the iterator is at the end of the pool.
Definition: ParticlePool.h:113
void LockAllElements()
Locks all particles.
Definition: ParticlePool.h:185
void ResetIterator()
Resets the pool iterator.
Definition: ParticlePool.h:70
void ReleaseAllElements()
Releases all locked particles.
Definition: ParticlePool.h:161
PoolList locked_
List with locked particles.
Definition: ParticlePool.h:214
T * GetNext()
Retrieves the next particle in the pool.
Definition: ParticlePool.h:97
ParticlePool()
Constructor.
Definition: ParticlePool.h:41