78 if (
End())
return NULL;
93 if (
End())
return NULL;
95 if (
End())
return NULL;
129 locked_.insert(make_pair(key, element));
141 if (
locked_.empty())
return NULL;
165 released_.insert(make_pair(it->first, it->second));
196 locked_.insert(make_pair(it->first, it->second));
A particle pool map.
Definition: ParticlePoolMap.h:24
T * GetFirst()
Retrieves the first particle.
Definition: ParticlePoolMap.h:76
size_t GetSize()
Retrieves the pool map size.
Definition: ParticlePoolMap.h:60
T * ReleaseElement(const Ogre::String &key)
Releases a locked particle.
Definition: ParticlePoolMap.h:139
void AddElement(const Ogre::String &key, T *element)
Adds a particle to the pool map.
Definition: ParticlePoolMap.h:128
void LockLatestElement()
Locks the released particle pointed by the iterator.
Definition: ParticlePoolMap.h:175
bool End()
Checks if the iterator is at the end of the pool map.
Definition: ParticlePoolMap.h:108
void ReleaseAllElements()
Releases all locked particles.
Definition: ParticlePoolMap.h:161
PoolMapIterator pool_map_iterator_
The pool map iterator.
Definition: ParticlePoolMap.h:222
virtual ~ParticlePoolMap()
Destructor.
Definition: ParticlePoolMap.h:41
PoolMapMap locked_
List with locked particles.
Definition: ParticlePoolMap.h:214
T * GetNext()
Retrieves the next particle in the pool map.
Definition: ParticlePoolMap.h:92
std::multimap< Ogre::String, T * > PoolMapMap
Definition: ParticlePoolMap.h:28
void ResetIterator()
Resets the pool iterator.
Definition: ParticlePoolMap.h:65
ParticlePoolMap()
Constructor.
Definition: ParticlePoolMap.h:36
PoolMapMap released_
List with released particles.
Definition: ParticlePoolMap.h:207
void Clear()
Removes all particles.
Definition: ParticlePoolMap.h:115
void LockAllElements()
Locks all particles.
Definition: ParticlePoolMap.h:192
PoolMapMap::iterator PoolMapIterator
Definition: ParticlePoolMap.h:31
bool IsEmpty()
Checks if the pool map is empty.
Definition: ParticlePoolMap.h:51
Ogre::String String
Definition: TypeDefine.h:37