CommonLibSSE (Parapets fork)
|
#include <IMemoryHeap.h>
Public Member Functions | |
~IMemoryHeap () override=default | |
bool | ContainsBlockImpl (const void *a_block) const override |
void * | AllocateAlignImpl (std::size_t a_size, std::uint32_t a_alignment) override |
void | DeallocateAlignImpl (void *&a_block) override |
virtual const char * | GetName () const =0 |
virtual void * | Allocate (std::size_t a_size, std::uint32_t a_alignment)=0 |
virtual void | Deallocate (void *a_mem, std::uint32_t)=0 |
virtual bool | PointerInHeap (const void *a_pointer) const =0 |
virtual std::size_t | TotalSize (const void *a_pointer) const =0 |
virtual void | GetHeapStats (HeapStats *a_stats, bool a_fullBlockInfo)=0 |
virtual bool | ShouldTrySmallBlockPools (std::size_t a_size, MEM_CONTEXT a_context)=0 |
virtual std::uint32_t | GetPageSize () const =0 |
Public Member Functions inherited from RE::IMemoryStore | |
~IMemoryStore () override=default | |
virtual void * | TryAllocateImpl ([[maybe_unused]] std::size_t a_size, [[maybe_unused]] std::uint32_t a_alignment) |
void * | AllocateAlign (std::size_t a_size, std::uint32_t a_alignment) |
void | DeallocateAlign (void *&a_freeBlock) |
Public Member Functions inherited from RE::IMemoryStoreBase | |
virtual | ~IMemoryStoreBase ()=default |
virtual std::size_t | Size (const void *a_mem) const =0 |
virtual void | GetMemoryStats (MemoryStats *a_stats)=0 |
Static Public Attributes | |
static constexpr auto | RTTI = RTTI_IMemoryHeap |
Static Public Attributes inherited from RE::IMemoryStore | |
static constexpr auto | RTTI = RTTI_IMemoryStore |
Static Public Attributes inherited from RE::IMemoryStoreBase | |
static constexpr auto | RTTI = RTTI_IMemoryStoreBase |
|
overridedefault |
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::MemoryHeap, and RE::bhkThreadMemorySource.
|
inlineoverridevirtual |
Implements RE::IMemoryStore.
Reimplemented in RE::ZeroOverheadHeap.
|
inlineoverridevirtual |
Implements RE::IMemoryStoreBase.
Reimplemented in RE::ZeroOverheadHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::MemoryHeap, and RE::bhkThreadMemorySource.
|
inlineoverridevirtual |
Implements RE::IMemoryStore.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::MemoryHeap, RE::bhkThreadMemorySource, and RE::AbstractHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::bhkThreadMemorySource, and RE::AbstractHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::bhkThreadMemorySource, and RE::AbstractHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::bhkThreadMemorySource, and RE::AbstractHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::bhkThreadMemorySource, and RE::AbstractHeap.
|
pure virtual |
Implemented in RE::ZeroOverheadHeap, RE::MemoryHeap, and RE::bhkThreadMemorySource.
|
inlinestaticconstexpr |