|
| OSAllocator (const OSAllocator &)=delete |
|
| OSAllocator (OSAllocator &&)=delete |
|
OSAllocator & | operator= (const OSAllocator &)=delete |
|
OSAllocator & | operator= (OSAllocator &&)=delete |
|
bool | Create () |
|
void | Destroy () override |
| All allocators must provide their deinitialization routine here.
|
|
AllocatorDebugConfig | GetDebugConfig () override |
| Returns the debug configuration for this allocator.
|
|
pointer | allocate (size_type byteSize, size_type alignment) override |
|
void | deallocate (pointer ptr, size_type byteSize=0, size_type alignment=0) override |
|
pointer | reallocate (pointer ptr, size_type newSize, align_type newAlignment) override |
|
size_type | get_allocated_size (pointer ptr, align_type alignment=1) const override |
|
size_type | NumAllocatedBytes () const override |
|
const Debug::AllocationRecords * | GetRecords () const override |
| Returns a pointer to the allocation records. They might be available or not depending on the build type. Debug::AllocationRecords.
|
|
void | SetRecords (Debug::AllocationRecords *records) final |
| Sets the allocation records.
|
|
bool | IsReady () const final |
| Returns true if this allocator is ready to use.
|
|
void | PostCreate () override |
| All conforming allocators must call PostCreate() after their custom Create() method in order to be properly registered.
|
|
void | PreDestroy () final |
| All conforming allocators must call PreDestroy() before their custom Destroy() method in order to be properly deregistered.
|
|
void | SetProfilingActive (bool active) final |
|
bool | IsProfilingActive () const final |
| Returns true if profiling calls will be made.
|
|
virtual const Debug::AllocationRecords * | GetRecords () const |
| Returns a pointer to the allocation records. They might be available or not depending on the build type. Debug::AllocationRecords.
|
|
Debug::AllocationRecords * | GetRecords () |
|
| AZ_RTTI (IAllocator, "{0A3C59AE-169C-45F6-9423-3B8C89245E2E}") |
|
| IAllocator (const IAllocator &)=delete |
|
| IAllocator (IAllocator &&)=delete |
|
IAllocator & | operator= (const IAllocator &)=delete |
|
IAllocator & | operator= (IAllocator &&)=delete |
|
virtual pointer | allocate (size_type byteSize, align_type alignment=1)=0 |
|
virtual void | deallocate (pointer ptr, size_type byteSize=0, align_type alignment=0)=0 |
|
virtual pointer | reallocate (pointer ptr, size_type newSize, align_type newAlignment=1)=0 |
|
virtual size_type | max_size () const |
|
virtual size_type | get_allocated_size (pointer ptr, align_type alignment=1) const =0 |
|
virtual void | GarbageCollect () |
|
const char * | GetName () const |
|
pointer | Allocate (size_type byteSize, size_type alignment=1, int flags=0, const char *name=nullptr, const char *fileName=nullptr, int lineNum=0, unsigned int suppressStackRecord=0) |
|
void | DeAllocate (pointer ptr, size_type byteSize=0, size_type alignment=0) |
|
| AZ_DEPRECATED_MESSAGE ("Resize no longer supported, use reallocate instead, note that the pointer address could change, " "Allocators should do best effort to keep the ptr at the same address") size_type Resize(pointer ptr |
|
pointer | ReAllocate (pointer ptr, size_type newSize, size_type newAlignment) |
|
size_type | AllocationSize (pointer ptr) |
| Returns allocation size for given address. 0 if the address doesn't belong to the allocator.
|
|
virtual size_type | NumAllocatedBytes () const |
|
size_type | Capacity () const |
|
size_type | GetMaxAllocationSize () const |
| Returns max allocation size if possible. If not returned value is 0.
|
|
size_type | GetMaxContiguousAllocationSize () const |
| Returns the maximum contiguous allocation size of a single allocation.
|
|
size_type | GetUnAllocatedMemory (bool isPrint=false) const |
|
virtual AllocatorDebugConfig | GetDebugConfig () |
| Returns the debug configuration for this allocator.
|
|
virtual const Debug::AllocationRecords * | GetRecords () const |
| Returns a pointer to the allocation records. They might be available or not depending on the build type. Debug::AllocationRecords.
|
|
Debug::AllocationRecords * | GetRecords () |
|
virtual void | SetRecords (Debug::AllocationRecords *records) |
| Sets the allocation records.
|
|
virtual bool | IsReady () const |
| Returns true if this allocator is ready to use.
|
|
virtual void | SetProfilingActive (bool active) |
|
virtual bool | IsProfilingActive () const |
| Returns true if profiling calls will be made.
|
|
|
size_type | newSize |
|
AZ_FORCE_INLINE size_t | MemorySizeAdjustedUp (size_t byteSize) const |
| Returns the size of a memory allocation after adjusting for tracking.
|
|
AZ_FORCE_INLINE size_t | MemorySizeAdjustedDown (size_t byteSize) const |
| Returns the size of a memory allocation, removing any tracking overhead.
|
|
void | DisableRegistration () |
|
void | ProfileAllocation (void *ptr, size_t byteSize, size_t alignment, int suppressStackRecord) |
| Records an allocation for profiling.
|
|
void | ProfileDeallocation (void *ptr, size_t byteSize, size_t alignment, Debug::AllocationInfo *info) |
| Records a deallocation for profiling.
|
|
void | ProfileReallocation (void *ptr, void *newPtr, size_t newSize, size_t newAlignment) |
| Records a reallocation for profiling.
|
|
void | ProfileResize (void *ptr, size_t newSize) |
| Records a resize for profiling.
|
|
bool | OnOutOfMemory (size_t byteSize, size_t alignment) |
| User allocator should call this function when they run out of memory!
|
|
virtual void | PostCreate () |
| All conforming allocators must call PostCreate() after their custom Create() method in order to be properly registered.
|
|
virtual void | PreDestroy () |
| All conforming allocators must call PreDestroy() before their custom Destroy() method in order to be properly deregistered.
|
|
virtual void | Destroy () |
| All allocators must provide their deinitialization routine here.
|
|
OS allocator should be used for direct OS allocations (C heap) It's memory usage is NOT tracked. If you don't create this allocator, it will be implicitly created by the SystemAllocator when it is needed. In addition this allocator is used for debug data (like memory tracking, etc.)