common::DynamicFreeList< T > Class Template Reference
[FreeList Module]

Alokator z samorozszerzeającą się pulą pamięci. More...

#include <FreeList.hpp>

List of all members.

Public Member Functions

 DynamicFreeList (uint BlockCapacity)
 ~DynamicFreeList ()
T * TryNew ()
 Alokacja z wywołaniem konstruktora domyślnego. Typy atomowe pozostają niezainicjalizowane.
T * New ()
 Alokacja z wywołaniem konstruktora domyślnego. Typy atomowe pozostają niezainicjalizowane.
T * TryNew_ctor ()
 Wersje do alokacji z jawnym wywołaniem konstruktora domyślnego. Dla typów atomowych oznacza to wyzerowanie.
T * New_ctor ()
 Wersje do alokacji z jawnym wywołaniem konstruktora domyślnego. Dla typów atomowych oznacza to wyzerowanie.
template<typename T1 >
T * TryNew (const T1 &v1)
 Wersje do alokacji z wywołaniem konstruktora posiadającego 1, 2, 3, 4, 5 parametrów.
template<typename T1 >
T * New (const T1 &v1)
template<typename T1 , typename T2 >
T * TryNew (const T1 &v1, const T2 &v2)
template<typename T1 , typename T2 >
T * New (const T1 &v1, const T2 &v2)
template<typename T1 , typename T2 , typename T3 >
T * TryNew (const T1 &v1, const T2 &v2, const T3 &v3)
template<typename T1 , typename T2 , typename T3 >
T * New (const T1 &v1, const T2 &v2, const T3 &v3)
template<typename T1 , typename T2 , typename T3 , typename T4 >
T * TryNew (const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4)
template<typename T1 , typename T2 , typename T3 , typename T4 >
T * New (const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4)
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * TryNew (const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4, const T5 &v5)
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * New (const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4, const T5 &v5)
void Delete (T *x)
 Zwalnia komórkę pamięci zaalokowaną wcześniej z tej listy.
bool IsEmpty ()
 Zwraca true, jeśli lista jest pusta - nic nie zaalokowane.
bool IsFull ()
 Zwraca true, jeśli lista jest pełna - nie ma już pustego miejsca.
uint GetBlockCount ()
Statystyki w elementach



uint GetBlockCapacity ()
uint GetUsedCount ()
uint GetFreeCount ()
uint GetCapacity ()
Statystyki w bajtach



uint GetBlockSize ()
uint GetUsedSize ()
uint GetFreeSize ()
uint GetAllSize ()

Detailed Description

template<typename T>
class common::DynamicFreeList< T >

Alokator z samorozszerzeającą się pulą pamięci.


Constructor & Destructor Documentation

template<typename T >
common::DynamicFreeList< T >::DynamicFreeList ( uint  BlockCapacity  )  [inline]
Parameters:
BlockCapacity to długość jednego bloku, w elementach
template<typename T >
common::DynamicFreeList< T >::~DynamicFreeList (  )  [inline]

Member Function Documentation

template<typename T >
void common::DynamicFreeList< T >::Delete ( T *  x  )  [inline]

Zwalnia komórkę pamięci zaalokowaną wcześniej z tej listy.

template<typename T >
uint common::DynamicFreeList< T >::GetAllSize (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetBlockCapacity (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetBlockCount (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetBlockSize (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetCapacity (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetFreeCount (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetFreeSize (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetUsedCount (  )  [inline]
template<typename T >
uint common::DynamicFreeList< T >::GetUsedSize (  )  [inline]
template<typename T >
bool common::DynamicFreeList< T >::IsEmpty (  )  [inline]

Zwraca true, jeśli lista jest pusta - nic nie zaalokowane.

template<typename T >
bool common::DynamicFreeList< T >::IsFull (  )  [inline]

Zwraca true, jeśli lista jest pełna - nie ma już pustego miejsca.

template<typename T >
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T* common::DynamicFreeList< T >::New ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3,
const T4 &  v4,
const T5 &  v5 
) [inline]
template<typename T >
template<typename T1 , typename T2 , typename T3 , typename T4 >
T* common::DynamicFreeList< T >::New ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3,
const T4 &  v4 
) [inline]
template<typename T >
template<typename T1 , typename T2 , typename T3 >
T* common::DynamicFreeList< T >::New ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3 
) [inline]
template<typename T >
template<typename T1 , typename T2 >
T* common::DynamicFreeList< T >::New ( const T1 &  v1,
const T2 &  v2 
) [inline]
template<typename T >
template<typename T1 >
T* common::DynamicFreeList< T >::New ( const T1 &  v1  )  [inline]
template<typename T >
T* common::DynamicFreeList< T >::New (  )  [inline]

Alokacja z wywołaniem konstruktora domyślnego. Typy atomowe pozostają niezainicjalizowane.

Alokuje. Jeśli się nie da, rzuca wyjątek bad_alloc.

template<typename T >
T* common::DynamicFreeList< T >::New_ctor (  )  [inline]

Wersje do alokacji z jawnym wywołaniem konstruktora domyślnego. Dla typów atomowych oznacza to wyzerowanie.

template<typename T >
template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T* common::DynamicFreeList< T >::TryNew ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3,
const T4 &  v4,
const T5 &  v5 
) [inline]
template<typename T >
template<typename T1 , typename T2 , typename T3 , typename T4 >
T* common::DynamicFreeList< T >::TryNew ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3,
const T4 &  v4 
) [inline]
template<typename T >
template<typename T1 , typename T2 , typename T3 >
T* common::DynamicFreeList< T >::TryNew ( const T1 &  v1,
const T2 &  v2,
const T3 &  v3 
) [inline]
template<typename T >
template<typename T1 , typename T2 >
T* common::DynamicFreeList< T >::TryNew ( const T1 &  v1,
const T2 &  v2 
) [inline]
template<typename T >
template<typename T1 >
T* common::DynamicFreeList< T >::TryNew ( const T1 &  v1  )  [inline]

Wersje do alokacji z wywołaniem konstruktora posiadającego 1, 2, 3, 4, 5 parametrów.

template<typename T >
T* common::DynamicFreeList< T >::TryNew (  )  [inline]

Alokacja z wywołaniem konstruktora domyślnego. Typy atomowe pozostają niezainicjalizowane.

Próbuje zaalokować. Jeśli się nie da, zwraca NULL.

template<typename T >
T* common::DynamicFreeList< T >::TryNew_ctor (  )  [inline]

Wersje do alokacji z jawnym wywołaniem konstruktora domyślnego. Dla typów atomowych oznacza to wyzerowanie.


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

Generated on Wed Dec 16 20:44:54 2009 for CommonLib by  doxygen 1.6.1