![]() |
Plasma Engine
2.0
|
Base class for all memory allocators. More...
#include <Allocator.h>
Classes | |
struct | Stats |
Public Member Functions | |
virtual void * | Allocate (size_t uiSize, size_t uiAlign, plMemoryUtils::DestructorFunction destructorFunc=nullptr)=0 |
Interface, do not use this directly, always use the new/delete macros below. | |
virtual void | Deallocate (void *pPtr)=0 |
virtual void * | Reallocate (void *pPtr, size_t uiCurrentSize, size_t uiNewSize, size_t uiAlign) |
virtual size_t | AllocatedSize (const void *pPtr)=0 |
Returns the number of bytes allocated at this address. | |
virtual plAllocatorId | GetId () const =0 |
virtual Stats | GetStats () const =0 |
Base class for all memory allocators.
|
pure virtual |
Interface, do not use this directly, always use the new/delete macros below.
Implemented in plInternal::plAllocatorImpl< AllocationPolicy, TrackingMode >, plInternal::plAllocatorImpl< plAllocPolicyHeap, TrackingMode >, plInternal::plAllocatorImpl< plAllocPolicyLinear< false >, TrackingMode >, plInternal::plAllocatorImpl< plAllocPolicyProxy, TrackingMode >, plLinearAllocator< TrackingMode, OverwriteMemoryOnReset >, and plLinearAllocator< plAllocatorTrackingMode::Nothing >.
|
pure virtual |
Returns the number of bytes allocated at this address.
Implemented in plInternal::plAllocatorImpl< AllocationPolicy, TrackingMode >, plInternal::plAllocatorImpl< plAllocPolicyHeap, TrackingMode >, plInternal::plAllocatorImpl< plAllocPolicyLinear< false >, TrackingMode >, and plInternal::plAllocatorImpl< plAllocPolicyProxy, TrackingMode >.