enum HeapFlags { Heap_ThreadUnsafe = 0x0001, Heap_FastTinyBlocks = 0x0002, Heap_FixedGranularity = 0x0004, Heap_Root = 0x0008, Heap_NoDebugInfo = 0x0010, Heap_UserDebug = 0x1000 };
Flag bits set to indicate if the heap is root heap, thread safe, uses debug mode and so on.
Members |
Description |
Heap_ThreadUnsafe = 0x0001 |
Flag set for heaps that are not thread safe. |
Heap_FastTinyBlocks = 0x0002 |
Flag set to indicate heaps which significantly speeds up small allocations, up to 8 * MinAlign, but which may result in higher memory overhead. The smallest heap size will typically increase by about 8* PageSize. For the PageSize equal to 4 K the heap size would be 32K. If there are thousands of small allocations existing simultaneously, the extra memory overhead is low. |
Heap_FixedGranularity = 0x0004 |
Flag set to indicate fixed granularity. Fixed granularity means that the memory segments will have small size as possible. This slightly reduces the total footprint and eases returning memory to the system, but may slow down the allocations. Fixed granularity makes the heap less realloc-friendly. |
Heap_Root = 0x0008 |
Flag set if this is the root (global) memory heap. |
Heap_NoDebugInfo = 0x0010 |
Flag set if this heap keeps debug data in an alternative heap. If not, then this heap does not track debug information. |
Heap_UserDebug = 0x1000 |
This flag can be set by the user for debug tool allocations, such as the player HUD. GFx tools can choose to omit these heaps from information reporting or report them separately. This flag is for user information only, it has no effect on heap implementation. |
SF_MemoryHeap.h