28 #ifndef MRPT_MEMORY_POOL_H
29 #define MRPT_MEMORY_POOL_H
55 template <
class DATA_PARAMS,
class POOLABLE_DATA>
59 typedef std::list<std::pair<DATA_PARAMS,POOLABLE_DATA*> >
TList;
79 static bool was_destroyed =
false;
81 return was_destroyed ? NULL : &inst;
92 if (
m_pool.empty())
return NULL;
96 if (it->first.isSuitable(params))
98 POOLABLE_DATA * ret = it->second;
116 if (
m_pool.begin()->second)
delete m_pool.begin()->second;