|
|
|
|
Documentation |
|
Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages Search
NLMISC::CHeapAllocator Class Reference#include <heap_allocator.h>
List of all members.
Public Types |
typedef char | TCategoryString [CategoryStringLength] |
enum | {
ReleaseHeaderSize = 8,
CategoryStringLength = 8,
BeginNodeMarkers = '<',
EndNodeMarkers = '>',
UnallocatedMemory = 0xba,
UninitializedMemory = 0xbc,
DeletedMemory = 0xbd,
NameLength = 32
} |
enum | TBlockAllocationMode { Grow,
DontGrow
} |
| Block allocation mode. More...
|
enum | TOutOfMemoryMode { ThrowException,
ReturnNull
} |
| Out of memory signal. More...
|
enum | {
SmallBlockGranularityShift = 3,
SmallBlockGranularity = 1<<SmallBlockGranularityShift,
FirstSmallBlock = 8,
LastSmallBlock = 128,
SmallBlockPoolSize = 20
} |
Public Methods |
| CHeapAllocator (uint mainBlockSize=1024 *1024 *10, uint blockCount=1, TBlockAllocationMode blockAllocationMode=Grow, TOutOfMemoryMode outOfMemoryMode=ThrowException) |
virtual | ~CHeapAllocator () |
void * | allocate (uint size, const char *sourceFile, uint line, const char *category) |
void * | reallocate (void *ptr, uint size, const char *sourceFile, uint line, const char *category) |
void | free (void *ptr) |
void | freeAll () |
void | releaseMemory () |
bool | setMainBlockSize (uint mainBlockSize) |
uint | getMainBlockSize () const |
bool | setMainBlockCount (uint blockCount) |
uint | getMainBlockCount () const |
void | setBlockAllocationMode (TBlockAllocationMode mode) |
TBlockAllocationMode | getBlockAllocationMode () const |
void | setOutOfMemoryMode (TOutOfMemoryMode mode) |
TOutOfMemoryMode | getOutOfMemoryMode () const |
bool | checkHeap (bool stopOnError) const |
uint | getAllocatedMemory () const |
uint | getFreeMemory () const |
uint | getTotalMemoryUsed () const |
uint | getSmallBlockMemory () const |
uint | getAllocatedSystemMemoryByAllocator () |
float | getFragmentationRatio () const |
void | setName (const char *name) |
const char * | getName () const |
uint | debugGetDebugInfoSize () const |
uint | debugGetSBDebugInfoSize () const |
uint | debugGetLBDebugInfoSize () const |
uint | debugGetAllocatedMemoryByCategory (const char *category) const |
bool | debugStatisticsReport (const char *stateFile, bool memoryMap) |
void | debugAlwaysCheckMemory (bool alwaysCheck) |
bool | debugIsAlwaysCheckMemory (bool alwaysCheck) const |
void | debugReportMemoryLeak () |
virtual uint8 * | allocateBlock (uint size) |
virtual void | freeBlock (uint8 *block) |
void | debugPushCategoryString (const char *str) |
void | debugPopCategoryString () |
Static Public Methods |
uint | getBlockSize (void *block) |
uint | getAllocatedSystemMemory () |
Private Types |
enum | { FreeNodeBlockSize = 128,
FreeNodeBlockSizeShift = 7,
FreeNodeBlockSizeMask = 0x7f
} |
enum | { Align = 8,
BlockDataSizeMin = 1<<4
} |
enum | { UserDataBlockSizeMin = sizeof(CFreeNode)
} |
Private Methods |
bool | checkNodeLB (const CMainBlock *mainBlock, const CNodeBegin *previous, const CNodeBegin *current, const CNodeBegin *next, bool stopOnError) const |
void | rotateLeft (CFreeNode *x) |
void | rotateRight (CFreeNode *x) |
void | insert (CFreeNode *x) |
void | erase (CFreeNode *z) |
CFreeNode * | find (uint size) |
CNodeBegin * | splitNode (CNodeBegin *node, uint newSize) |
void | initEmptyBlock (CMainBlock &mainBlock) |
bool | checkFreeNode (const CFreeNode *current, bool stopOnError, bool recurse) const |
void | checkNode (const CNodeBegin *current, uint32 crc) const |
bool | internalCheckHeap (bool stopOnError) const |
void | enterCriticalSection () const |
void | leaveCriticalSection () const |
void | enterCriticalSectionSB () const |
void | leaveCriticalSectionSB () const |
void | enterCriticalSectionLB () const |
void | leaveCriticalSectionLB () const |
bool | checkNodeSB (const CSmallBlockPool *mainBlock, const CNodeBegin *previous, const CNodeBegin *current, const CNodeBegin *next, bool stopOnError) const |
Static Private Methods |
uint32 | evalMagicNumber (const CNodeBegin *node) |
const CNodeBegin * | getNextNode (const CNodeBegin *current) |
CNodeBegin * | getNextNode (CNodeBegin *current) |
const CFreeNode * | getFreeNode (const CNodeBegin *current) |
CFreeNode * | getFreeNode (CNodeBegin *current) |
const CNodeBegin * | getNode (const CFreeNode *current) |
CNodeBegin * | getNode (CFreeNode *current) |
uint | getNodeSize (const CNodeBegin *current) |
bool | isNodeFree (const CNodeBegin *current) |
bool | isNodeUsed (const CNodeBegin *current) |
bool | isNodeLast (const CNodeBegin *current) |
bool | isNodeSmall (const CNodeBegin *current) |
bool | isNodeRed (const CFreeNode *current) |
bool | isNodeBlack (const CFreeNode *current) |
void | setNodeFree (CNodeBegin *current) |
void | setNodeUsed (CNodeBegin *current) |
void | setNodeLast (CNodeBegin *current, bool last) |
void | setNodeSize (CNodeBegin *current, uint size) |
void | setNodeColor (CFreeNode *current, bool red) |
void | setNodeRed (CFreeNode *current) |
void | setNodeBlack (CFreeNode *current) |
const CNodeBegin * | getFirstNode (const CMainBlock *mainBlock) |
CNodeBegin * | getFirstNode (CMainBlock *mainBlock) |
void | mergeNode (CNodeBegin *node) |
void | computeCRC32 (uint32 &crc, const void *buffer, unsigned int count) |
CNodeBegin * | getSmallBlock (CSmallBlockPool *smallBlock, uint blockIndex) |
CNodeBegin * | getNextSmallBlock (CNodeBegin *previous) |
void | setNextSmallBlock (CNodeBegin *previous, CNodeBegin *next) |
Private Attributes |
uint | _MainBlockSize |
uint | _BlockCount |
TBlockAllocationMode | _BlockAllocationMode |
TOutOfMemoryMode | _OutOfMemoryMode |
bool | _AlwaysCheck |
CMainBlock * | _MainBlockList |
CFreeNode * | _FreeTreeRoot |
CNullNode | _NullNode |
CAllocatorMutex | _MutexLB |
char | _Name [NameLength] |
uint32 | _AllocateCount |
volatile CNodeBegin * | _FreeSmallBlocks [NL_SMALLBLOCK_COUNT] |
volatile CSmallBlockPool * | _SmallBlockPool |
CAllocatorMutex | _MutexSB |
CTDS | _CategoryStack |
Member Typedef Documentation
typedef char NLMISC::CHeapAllocator::TCategoryString[CategoryStringLength]
|
|
Member Enumeration Documentation
|
-
Enumeration values:
-
SmallBlockGranularityShift |
|
SmallBlockGranularity |
|
FirstSmallBlock |
|
LastSmallBlock |
|
SmallBlockPoolSize |
|
Definition at line 403 of file include/nel/misc/heap_allocator.h. |
|
-
Enumeration values:
-
ReleaseHeaderSize |
|
CategoryStringLength |
|
BeginNodeMarkers |
|
EndNodeMarkers |
|
UnallocatedMemory |
|
UninitializedMemory |
|
DeletedMemory |
|
NameLength |
|
Definition at line 70 of file include/nel/misc/heap_allocator.h. |
enum NLMISC::CHeapAllocator::TBlockAllocationMode
|
|
|
Block allocation mode.
-
Enumeration values:
-
Grow |
When the allocator runs out of memory, allocate a new block. |
DontGrow |
When the allocator runs out of memory, returns a out of memory signal. |
Definition at line 85 of file include/nel/misc/heap_allocator.h. |
enum NLMISC::CHeapAllocator::TOutOfMemoryMode
|
|
|
Out of memory signal.
-
Enumeration values:
-
ThrowException |
When the allocator runs out of memory, throw an exception. |
ReturnNull |
When the allocator runs out of memory, returns NULL. |
Definition at line 97 of file include/nel/misc/heap_allocator.h. |
Constructor & Destructor Documentation
|
Definition at line 70 of file misc/heap_allocator.cpp.
References _AllocateCount, _AlwaysCheck, _BlockAllocationMode, _BlockCount, _FreeSmallBlocks, _FreeTreeRoot, _MainBlockList, _MainBlockSize, _Name, _NullNode, _OutOfMemoryMode, _SmallBlockPool, Align, enterCriticalSection, FirstSmallBlock, NLMISC::CHeapAllocator::CNullNode::FreeNode, internalAssert, LastSmallBlock, leaveCriticalSection, NLMISC::CHeapAllocator::CFreeNode::Left, NLMISC::CHeapAllocator::CFreeNode::Parent, NLMISC::CHeapAllocator::CFreeNode::Right, setNodeBlack, and SmallBlockGranularity. |
NLMISC::CHeapAllocator::~CHeapAllocator |
( |
|
) |
[virtual] |
|
Member Function Documentation
void * NLMISC::CHeapAllocator::allocate |
( |
uint |
size, |
|
|
const char * |
sourceFile, |
|
|
uint |
line, |
|
|
const char * |
category |
|
) |
|
|
uint8 * NLMISC::CHeapAllocator::allocateBlock |
( |
uint |
size |
) |
[virtual] |
|
bool NLMISC::CHeapAllocator::checkFreeNode |
( |
const CFreeNode * |
current, |
|
|
bool |
stopOnError, |
|
|
bool |
recurse |
|
) |
const [private] |
|
bool NLMISC::CHeapAllocator::checkHeap |
( |
bool |
stopOnError |
) |
const |
|
void NLMISC::CHeapAllocator::checkNode |
( |
const CNodeBegin * |
current, |
|
|
uint32 |
crc |
|
) |
const [private] |
|
void NLMISC::CHeapAllocator::computeCRC32 |
( |
uint32 & |
crc, |
|
|
const void * |
buffer, |
|
|
unsigned int |
count |
|
) |
[inline, static, private] |
|
void NLMISC::CHeapAllocator::debugAlwaysCheckMemory |
( |
bool |
alwaysCheck |
) |
|
|
uint NLMISC::CHeapAllocator::debugGetAllocatedMemoryByCategory |
( |
const char * |
category |
) |
const |
|
uint NLMISC::CHeapAllocator::debugGetDebugInfoSize |
( |
|
) |
const |
|
uint NLMISC::CHeapAllocator::debugGetLBDebugInfoSize |
( |
|
) |
const |
|
uint NLMISC::CHeapAllocator::debugGetSBDebugInfoSize |
( |
|
) |
const |
|
bool NLMISC::CHeapAllocator::debugIsAlwaysCheckMemory |
( |
bool |
alwaysCheck |
) |
const |
|
void NLMISC::CHeapAllocator::debugPopCategoryString |
( |
|
) |
|
|
void NLMISC::CHeapAllocator::debugPushCategoryString |
( |
const char * |
str |
) |
|
|
void NLMISC::CHeapAllocator::debugReportMemoryLeak |
( |
|
) |
|
|
|
Definition at line 1910 of file misc/heap_allocator.cpp.
References _MainBlockList, _Name, _SmallBlockPool, NLMISC::CHeapAllocatorOutputError, checkNode, debugPopCategoryString, debugPushCategoryString, evalMagicNumber, getFirstNode, getNextNode, getNodeSize, getSmallBlock, isNodeUsed, NL_HEAP_MEM_DEBUG_CATEGORY, SmallBlockPoolSize, NLMISC::smprintf, and NLMISC::TLinkMap. |
bool NLMISC::CHeapAllocator::debugStatisticsReport |
( |
const char * |
stateFile, |
|
|
bool |
memoryMap |
|
) |
|
|
|
Definition at line 1387 of file misc/heap_allocator.cpp.
References _MainBlockList, _Name, _SmallBlockPool, debugGetDebugInfoSize, debugGetLBDebugInfoSize, debugGetSBDebugInfoSize, debugPopCategoryString, debugPushCategoryString, file, free, getAllocatedMemory, getAllocatedSystemMemory, getAllocatedSystemMemoryByAllocator, getFirstNode, getFragmentationRatio, getFreeMemory, getMainBlockCount, getMainBlockSize, getNextNode, getNodeSize, getSmallBlock, getSmallBlockMemory, getTotalMemoryUsed, index, isNodeFree, isNodeUsed, NL_HEAP_MEM_DEBUG_CATEGORY, NL_SIZE_TO_SMALLBLOCK_INDEX, ReleaseHeaderSize, SmallBlockGranularity, and SmallBlockPoolSize. |
void NLMISC::CHeapAllocator::enterCriticalSection |
( |
|
) |
const [private] |
|
|
Referenced by CHeapAllocator, debugGetAllocatedMemoryByCategory, debugGetLBDebugInfoSize, debugGetSBDebugInfoSize, freeAll, getAllocatedMemory, getFragmentationRatio, getFreeMemory, getSmallBlockMemory, getTotalMemoryUsed, internalCheckHeap, releaseMemory, and setName. |
void NLMISC::CHeapAllocator::enterCriticalSectionLB |
( |
|
) |
const [private] |
|
void NLMISC::CHeapAllocator::enterCriticalSectionSB |
( |
|
) |
const [private] |
|
void NLMISC::CHeapAllocator::erase |
( |
CFreeNode * |
z |
) |
[inline, private] |
|
|
Definition at line 259 of file misc/heap_allocator.cpp.
References _FreeTreeRoot, _NullNode, NLMISC::CHeapAllocator::CNullNode::FreeNode, internalAssert, isNodeBlack, isNodeRed, NL_UPDATE_MAGIC_NUMBER_FREE_NODE, rotateLeft, rotateRight, setNodeBlack, setNodeColor, setNodeRed, w, x, y, and z.
Referenced by free. |
uint32 NLMISC::CHeapAllocator::evalMagicNumber |
( |
const CNodeBegin * |
node |
) |
[static, private] |
|
CFreeNode* NLMISC::CHeapAllocator::find |
( |
uint |
size |
) |
[inline, private] |
|
void NLMISC::CHeapAllocator::free |
( |
void * |
ptr |
) |
|
|
|
Definition at line 988 of file misc/heap_allocator.cpp.
References _FreeSmallBlocks, checkNode, DeletedMemory, enterCriticalSectionLB, enterCriticalSectionSB, erase, evalMagicNumber, getFreeNode, getNextNode, getNodeSize, insert, internalCheckHeap, isNodeFree, LastSmallBlock, leaveCriticalSectionLB, leaveCriticalSectionSB, mergeNode, NL_SIZE_TO_SMALLBLOCK_INDEX, NL_UPDATE_MAGIC_NUMBER, and setNodeFree.
Referenced by debugPopCategoryString, debugStatisticsReport, and getFragmentationRatio. |
void NLMISC::CHeapAllocator::freeAll |
( |
|
) |
|
|
|
Definition at line 1839 of file misc/heap_allocator.cpp.
References _FreeTreeRoot, _MainBlockList, _NullNode, enterCriticalSection, NLMISC::CHeapAllocator::CNullNode::FreeNode, getFirstNode, getFreeNode, initEmptyBlock, insert, leaveCriticalSection, and NL_UPDATE_MAGIC_NUMBER. |
void NLMISC::CHeapAllocator::freeBlock |
( |
uint8 * |
block |
) |
[virtual] |
|
uint NLMISC::CHeapAllocator::getAllocatedMemory |
( |
|
) |
const |
|
|
Definition at line 1178 of file misc/heap_allocator.cpp.
References _MainBlockList, _SmallBlockPool, checkNode, enterCriticalSection, evalMagicNumber, getFirstNode, getNextNode, getNodeSize, getSmallBlock, isNodeUsed, leaveCriticalSection, NL_HEAP_SB_CATEGORY, ReleaseHeaderSize, and SmallBlockPoolSize.
Referenced by debugStatisticsReport. |
uint NLMISC::CHeapAllocator::getAllocatedSystemMemory |
( |
|
) |
[static] |
|
uint NLMISC::CHeapAllocator::getAllocatedSystemMemoryByAllocator |
( |
|
) |
|
|
uint NLMISC::CHeapAllocator::getBlockSize |
( |
void * |
block |
) |
[static] |
|
const CNodeBegin* NLMISC::CHeapAllocator::getFirstNode |
( |
const CMainBlock * |
mainBlock |
) |
[static, private] |
|
float NLMISC::CHeapAllocator::getFragmentationRatio |
( |
|
) |
const |
|
uint NLMISC::CHeapAllocator::getFreeMemory |
( |
|
) |
const |
|
|
Definition at line 1679 of file misc/heap_allocator.cpp.
References _MainBlockList, _SmallBlockPool, checkNode, enterCriticalSection, evalMagicNumber, getFirstNode, getNextNode, getNodeSize, getSmallBlock, isNodeFree, leaveCriticalSection, ReleaseHeaderSize, and SmallBlockPoolSize.
Referenced by debugStatisticsReport. |
const CFreeNode* NLMISC::CHeapAllocator::getFreeNode |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
uint NLMISC::CHeapAllocator::getMainBlockCount |
( |
|
) |
const |
|
uint NLMISC::CHeapAllocator::getMainBlockSize |
( |
|
) |
const |
|
const char* NLMISC::CHeapAllocator::getName |
( |
|
) |
const |
|
const CNodeBegin* NLMISC::CHeapAllocator::getNextNode |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
|
Referenced by debugGetAllocatedMemoryByCategory, debugGetLBDebugInfoSize, debugReportMemoryLeak, debugStatisticsReport, free, getAllocatedMemory, getFragmentationRatio, getFreeMemory, internalCheckHeap, mergeNode, and splitNode. |
const CNodeBegin* NLMISC::CHeapAllocator::getNode |
( |
const CFreeNode * |
current |
) |
[static, private] |
|
uint NLMISC::CHeapAllocator::getNodeSize |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
|
Referenced by debugGetAllocatedMemoryByCategory, debugReportMemoryLeak, debugStatisticsReport, free, getAllocatedMemory, getBlockSize, getFreeMemory, initEmptyBlock, insert, mergeNode, and splitNode. |
uint NLMISC::CHeapAllocator::getSmallBlockMemory |
( |
|
) |
const |
|
uint NLMISC::CHeapAllocator::getTotalMemoryUsed |
( |
|
) |
const |
|
void NLMISC::CHeapAllocator::initEmptyBlock |
( |
CMainBlock & |
mainBlock |
) |
[inline, private] |
|
|
Definition at line 575 of file misc/heap_allocator.cpp.
References BeginNodeMarkers, CategoryStringLength, EndNodeMarkers, getFirstNode, getNodeSize, internalAssert, NL_UPDATE_MAGIC_NUMBER, setNodeFree, setNodeLast, setNodeSize, and UnallocatedMemory.
Referenced by freeAll. |
void NLMISC::CHeapAllocator::insert |
( |
CFreeNode * |
x |
) |
[inline, private] |
|
|
Definition at line 136 of file misc/heap_allocator.cpp.
References _FreeTreeRoot, _NullNode, NLMISC::CHeapAllocator::CNullNode::FreeNode, getNode, getNodeSize, isNodeRed, NLMISC::CHeapAllocator::CFreeNode::Left, NL_UPDATE_MAGIC_NUMBER_FREE_NODE, NLMISC::CHeapAllocator::CFreeNode::Right, rotateLeft, rotateRight, setNodeBlack, setNodeRed, x, and y.
Referenced by free, and freeAll. |
bool NLMISC::CHeapAllocator::internalCheckHeap |
( |
bool |
stopOnError |
) |
const [private] |
|
|
Definition at line 2068 of file misc/heap_allocator.cpp.
References _FreeTreeRoot, _MainBlockList, _SmallBlockPool, checkFreeNode, checkNodeLB, checkNodeSB, enterCriticalSection, getFirstNode, getNextNode, getSmallBlock, internalAssert, leaveCriticalSection, and SmallBlockPoolSize.
Referenced by checkHeap, and free. |
bool NLMISC::CHeapAllocator::isNodeBlack |
( |
const CFreeNode * |
current |
) |
[static, private] |
|
bool NLMISC::CHeapAllocator::isNodeFree |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
bool NLMISC::CHeapAllocator::isNodeLast |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
bool NLMISC::CHeapAllocator::isNodeRed |
( |
const CFreeNode * |
current |
) |
[static, private] |
|
bool NLMISC::CHeapAllocator::isNodeSmall |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
bool NLMISC::CHeapAllocator::isNodeUsed |
( |
const CNodeBegin * |
current |
) |
[static, private] |
|
void NLMISC::CHeapAllocator::leaveCriticalSection |
( |
|
) |
const [private] |
|
|
Referenced by CHeapAllocator, debugGetAllocatedMemoryByCategory, debugGetLBDebugInfoSize, debugGetSBDebugInfoSize, freeAll, getAllocatedMemory, getFragmentationRatio, getFreeMemory, getSmallBlockMemory, getTotalMemoryUsed, internalCheckHeap, releaseMemory, and setName. |
void NLMISC::CHeapAllocator::leaveCriticalSectionLB |
( |
|
) |
const [private] |
|
void NLMISC::CHeapAllocator::leaveCriticalSectionSB |
( |
|
) |
const [private] |
|
void NLMISC::CHeapAllocator::mergeNode |
( |
CNodeBegin * |
node |
) |
[inline, static, private] |
|
void* NLMISC::CHeapAllocator::reallocate |
( |
void * |
ptr, |
|
|
uint |
size, |
|
|
const char * |
sourceFile, |
|
|
uint |
line, |
|
|
const char * |
category |
|
) |
|
|
void NLMISC::CHeapAllocator::releaseMemory |
( |
|
) |
|
|
void NLMISC::CHeapAllocator::rotateLeft |
( |
CFreeNode * |
x |
) |
[inline, private] |
|
void NLMISC::CHeapAllocator::rotateRight |
( |
CFreeNode * |
x |
) |
[inline, private] |
|
bool NLMISC::CHeapAllocator::setMainBlockCount |
( |
uint |
blockCount |
) |
|
|
bool NLMISC::CHeapAllocator::setMainBlockSize |
( |
uint |
mainBlockSize |
) |
|
|
void NLMISC::CHeapAllocator::setName |
( |
const char * |
name |
) |
|
|
void NLMISC::CHeapAllocator::setNextSmallBlock |
( |
CNodeBegin * |
previous, |
|
|
CNodeBegin * |
next |
|
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeBlack |
( |
CFreeNode * |
current |
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeColor |
( |
CFreeNode * |
current, |
|
|
bool |
red |
|
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeFree |
( |
CNodeBegin * |
current |
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeLast |
( |
CNodeBegin * |
current, |
|
|
bool |
last |
|
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeRed |
( |
CFreeNode * |
current |
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeSize |
( |
CNodeBegin * |
current, |
|
|
uint |
size |
|
) |
[static, private] |
|
void NLMISC::CHeapAllocator::setNodeUsed |
( |
CNodeBegin * |
current |
) |
[static, private] |
|
|
Definition at line 441 of file misc/heap_allocator.cpp.
References Align, BeginNodeMarkers, CategoryStringLength, EndNodeMarkers, getNextNode, getNodeSize, internalAssert, isNodeLast, NL_UPDATE_MAGIC_NUMBER, setNodeFree, setNodeLast, setNodeSize, and UserDataBlockSizeMin. |
Member Data Documentation
uint32 NLMISC::CHeapAllocator::_AllocateCount [private]
|
|
bool NLMISC::CHeapAllocator::_AlwaysCheck [private]
|
|
uint NLMISC::CHeapAllocator::_BlockCount [private]
|
|
CTDS NLMISC::CHeapAllocator::_CategoryStack [private]
|
|
volatile CNodeBegin* NLMISC::CHeapAllocator::_FreeSmallBlocks[NL_SMALLBLOCK_COUNT] [private]
|
|
CFreeNode* NLMISC::CHeapAllocator::_FreeTreeRoot [private]
|
|
CMainBlock* NLMISC::CHeapAllocator::_MainBlockList [private]
|
|
|
Definition at line 384 of file include/nel/misc/heap_allocator.h.
Referenced by CHeapAllocator, debugGetAllocatedMemoryByCategory, debugGetLBDebugInfoSize, debugReportMemoryLeak, debugStatisticsReport, freeAll, getAllocatedMemory, getAllocatedSystemMemoryByAllocator, getFragmentationRatio, getFreeMemory, getTotalMemoryUsed, internalCheckHeap, and releaseMemory. |
uint NLMISC::CHeapAllocator::_MainBlockSize [private]
|
|
char NLMISC::CHeapAllocator::_Name[NameLength] [private]
|
|
CNullNode NLMISC::CHeapAllocator::_NullNode [private]
|
|
volatile CSmallBlockPool* NLMISC::CHeapAllocator::_SmallBlockPool [private]
|
|
The documentation for this class was generated from the following files:
|
|