8 #include "PoolItemFactory.h"
9 #include "PoolHandle.h"
10 #include "PoolEntry.h"
16 namespace DataStructures
21 static_assert(std::is_pointer<T>::value,
"Template type paramter provided to class Pool is not a pointer");
23 typedef typename std::remove_pointer<T>::type TOmitPointer;
25 std::vector<PoolEntry<T> > m_entries;
26 std::stack<u16, std::vector<u16>> m_freeIndices;
31 int GetCount()
const {
return m_count; }
32 int GetCapacity()
const {
return static_cast<int>(m_entries.size()); }
33 const std::vector<PoolEntry<T> >& GetEntries() {
return m_entries; }