|
|
| HeapAllocator (const char *allocatorName) |
| |
|
void * | allocate (size_t size) |
| |
|
template<typename T > |
| T * | allocate (size_t numItems) |
| |
|
template<typename T > |
| T * | New () |
| |
|
void | deallocate (void *memory) |
| |
| void | setObjAddress (void *address) |
| |
|
template<typename T > |
| void | Delete (T *memory) |
| |
|
const char * | getName () const override |
| |
|
const char * | getType () const override |
| |
|
size_t | getRequestedUsage () const override |
| |
|
size_t | getRequestedHighWaterMark () const override |
| |
|
void | resetHighWaterMark () override |
| |
|
virtual const AllocationTracker * | getTracker () const |
| |
| virtual size_t | getAllocatorUsage () const |
| |
| virtual size_t | getAllocatorHighWaterMark () const |
| |
Heap Allocator
This is a very simple, thread-safe Heap allocator which calls through to DD::Image::Memory and tracks how much memory its using. Additionally, if FN_TRACK_MEMORY_ALLOCATIONS is defined (in Memory.h), and the NUKE_TRACK_OBJECT_ALLOCATIONS environment variable is set to 1, allocations using this allocator will be tracked between checkpoints, so that leaks can be identified. See the _nuke_internal.memAllocCheckpoint()/memAllocInfo() Python API calls for details.