LatMRG Guide  1.0
A software package to test and search for new linear congruential random number generators
tinyxml2::MemPoolT< ITEM_SIZE > Class Template Reference

#include <tinyxml2.h>

Inheritance diagram for tinyxml2::MemPoolT< ITEM_SIZE >:
tinyxml2::MemPool

Classes

struct  Block
 
union  Item
 

Public Types

enum  { ITEMS_PER_BLOCK = (4 * 1024) / ITEM_SIZE }
 

Public Member Functions

 MemPoolT ()
 
 ~MemPoolT ()
 
virtual void * Alloc ()
 
void Clear ()
 
int CurrentAllocs () const
 
virtual void Free (void *mem)
 
virtual int ItemSize () const
 
void SetTracked ()
 
void Trace (const char *name)
 
int Untracked () const
 
- Public Member Functions inherited from tinyxml2::MemPool
 MemPool ()
 
virtual ~MemPool ()
 

Private Member Functions

 MemPoolT (const MemPoolT &)
 
void operator= (const MemPoolT &)
 

Private Attributes

DynArray< Block *, 10 > _blockPtrs
 
int _currentAllocs
 
int _maxAllocs
 
int _nAllocs
 
int _nUntracked
 
Item_root
 

Member Enumeration Documentation

◆ anonymous enum

template<int ITEM_SIZE>
anonymous enum
Enumerator
ITEMS_PER_BLOCK 

Constructor & Destructor Documentation

◆ MemPoolT() [1/2]

template<int ITEM_SIZE>
tinyxml2::MemPoolT< ITEM_SIZE >::MemPoolT ( )
inline

◆ ~MemPoolT()

template<int ITEM_SIZE>
tinyxml2::MemPoolT< ITEM_SIZE >::~MemPoolT ( )
inline

◆ MemPoolT() [2/2]

template<int ITEM_SIZE>
tinyxml2::MemPoolT< ITEM_SIZE >::MemPoolT ( const MemPoolT< ITEM_SIZE > &  )
private

Member Function Documentation

◆ Alloc()

template<int ITEM_SIZE>
virtual void* tinyxml2::MemPoolT< ITEM_SIZE >::Alloc ( )
inlinevirtual

Implements tinyxml2::MemPool.

◆ Clear()

template<int ITEM_SIZE>
void tinyxml2::MemPoolT< ITEM_SIZE >::Clear ( )
inline

◆ CurrentAllocs()

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::CurrentAllocs ( ) const
inline

◆ Free()

template<int ITEM_SIZE>
virtual void tinyxml2::MemPoolT< ITEM_SIZE >::Free ( void *  mem)
inlinevirtual

Implements tinyxml2::MemPool.

◆ ItemSize()

template<int ITEM_SIZE>
virtual int tinyxml2::MemPoolT< ITEM_SIZE >::ItemSize ( ) const
inlinevirtual

Implements tinyxml2::MemPool.

◆ operator=()

template<int ITEM_SIZE>
void tinyxml2::MemPoolT< ITEM_SIZE >::operator= ( const MemPoolT< ITEM_SIZE > &  )
private

◆ SetTracked()

template<int ITEM_SIZE>
void tinyxml2::MemPoolT< ITEM_SIZE >::SetTracked ( )
inlinevirtual

Implements tinyxml2::MemPool.

◆ Trace()

template<int ITEM_SIZE>
void tinyxml2::MemPoolT< ITEM_SIZE >::Trace ( const char *  name)
inline

◆ Untracked()

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::Untracked ( ) const
inline

Member Data Documentation

◆ _blockPtrs

template<int ITEM_SIZE>
DynArray< Block*, 10 > tinyxml2::MemPoolT< ITEM_SIZE >::_blockPtrs
private

◆ _currentAllocs

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::_currentAllocs
private

◆ _maxAllocs

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::_maxAllocs
private

◆ _nAllocs

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::_nAllocs
private

◆ _nUntracked

template<int ITEM_SIZE>
int tinyxml2::MemPoolT< ITEM_SIZE >::_nUntracked
private

◆ _root

template<int ITEM_SIZE>
Item* tinyxml2::MemPoolT< ITEM_SIZE >::_root
private

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