7    enum class MEM_CONTEXT : std::int32_t;
 
   43        [[nodiscard]] 
virtual const char*   
GetName() 
const = 0;                                                      
 
   44        virtual void*                       
Allocate(std::size_t a_size, std::uint32_t a_alignment) = 0;              
 
   47        virtual std::size_t                 
TotalSize(
const void* a_pointer) 
const = 0;                               
 
Definition IMemoryHeap.h:31
 
void * AllocateAlignImpl(std::size_t a_size, std::uint32_t a_alignment) override
Definition IMemoryHeap.h:39
 
void DeallocateAlignImpl(void *&a_block) override
Definition IMemoryHeap.h:40
 
~IMemoryHeap() override=default
 
virtual bool ShouldTrySmallBlockPools(std::size_t a_size, MEM_CONTEXT a_context)=0
 
virtual std::size_t TotalSize(const void *a_pointer) const =0
 
virtual const char * GetName() const =0
 
virtual std::uint32_t GetPageSize() const =0
 
virtual bool PointerInHeap(const void *a_pointer) const =0
 
virtual void Deallocate(void *a_mem, std::uint32_t)=0
 
bool ContainsBlockImpl(const void *a_block) const override
Definition IMemoryHeap.h:38
 
static constexpr auto RTTI
Definition IMemoryHeap.h:33
 
virtual void GetHeapStats(HeapStats *a_stats, bool a_fullBlockInfo)=0
 
virtual void * Allocate(std::size_t a_size, std::uint32_t a_alignment)=0
 
Definition IMemoryStore.h:8
 
Definition AbsorbEffect.h:6
 
constexpr REL::VariantID RTTI_IMemoryHeap(690287, 398142, 0x1f5f5e8)
 
Definition IMemoryHeap.h:10
 
std::size_t smallestFreeBlock
Definition IMemoryHeap.h:21
 
std::size_t totalFree
Definition IMemoryHeap.h:26
 
std::size_t memFreeInBlocks
Definition IMemoryHeap.h:19
 
std::int32_t numFreeBlocks
Definition IMemoryHeap.h:18
 
std::size_t memUsedInBlocks
Definition IMemoryHeap.h:20
 
const char * heapName
Definition IMemoryHeap.h:13
 
std::size_t memHeapSize
Definition IMemoryHeap.h:14
 
std::size_t blockOverhead
Definition IMemoryHeap.h:25
 
std::size_t memHeapCommitted
Definition IMemoryHeap.h:15
 
std::size_t heapOverhead
Definition IMemoryHeap.h:23
 
std::int32_t numBlocks
Definition IMemoryHeap.h:17
 
std::size_t memAllocatedToBlocks
Definition IMemoryHeap.h:16
 
std::size_t largestFreeBlock
Definition IMemoryHeap.h:22
 
std::size_t freeListOverhead
Definition IMemoryHeap.h:24