ezEngine  Release 25.03
ezAllocator Class Referenceabstract

Base class for all memory allocators. More...

#include <Allocator.h>

Inheritance diagram for ezAllocator:

Classes

struct  Stats
 

Public Member Functions

virtual void * Allocate (size_t uiSize, size_t uiAlign, ezMemoryUtils::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. More...
 
virtual ezAllocatorId GetId () const =0
 
virtual Stats GetStats () const =0
 

Detailed Description

Base class for all memory allocators.

Member Function Documentation

◆ AllocatedSize()

virtual size_t ezAllocator::AllocatedSize ( const void *  pPtr)
pure virtual

Returns the number of bytes allocated at this address.

Note
Careful! This information is only available, if allocation tracking is enabled! Otherwise 0 is returned. See ezAllocatorTrackingMode and EZ_ALLOC_TRACKING_DEFAULT.

Implemented in ezInternal::ezAllocatorImpl< AllocationPolicy, TrackingMode >, ezInternal::ezAllocatorImpl< ezAllocPolicyHeap, TrackingMode >, ezInternal::ezAllocatorImpl< ezAllocPolicyLinear< false >, TrackingMode >, and ezInternal::ezAllocatorImpl< ezAllocPolicyProxy, TrackingMode >.


The documentation for this class was generated from the following files: