|
CommonLibSSE (Parapets fork)
|
#include <AbstractHeap.h>
Public Member Functions | |
| virtual | ~AbstractHeap () |
| virtual void | GetMemoryStats (MemoryStats *a_stats) override |
| virtual void * | AllocateAlignImpl (std::size_t a_size, std::uint32_t a_alignment) override |
| virtual void * | TryAllocateImpl (std::size_t a_size, std::uint32_t a_alignment) override |
| virtual const char * | GetName () const override |
| virtual bool | PointerInHeap (const void *a_pointer) const override |
| virtual void | GetHeapStats (HeapStats *a_stats, bool a_fullBlockInfo) override |
| virtual bool | ShouldTrySmallBlockPools (std::size_t a_size, MEM_CONTEXT a_context) override |
| virtual std::uint32_t | GetPageSize () const override |
| virtual void * | DoHeapAllocation (std::size_t a_size, std::size_t a_initialSize)=0 |
| virtual void | DoHeapFree (void *a_ptr)=0 |
| virtual std::size_t | CreateMorePages (void *a_memory, std::size_t a_currentSize, std::size_t a_requestedBytes) |
| virtual std::size_t | CleanExtraPages (void *a_memory, std::size_t a_currentSize, std::size_t a_freeBytes) |
| virtual void | DecommitPages (HeapBlock *a_block) |
| virtual void | CommitPages (HeapBlock *, std::size_t) |
Public Member Functions inherited from RE::IMemoryHeap | |
| ~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 void * | Allocate (std::size_t a_size, std::uint32_t a_alignment)=0 |
| virtual void | Deallocate (void *a_mem, std::uint32_t)=0 |
| virtual std::size_t | TotalSize (const void *a_pointer) 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 |
Public Attributes | |
| BSCriticalSection | criticalSection |
| const char * | name |
| std::size_t | minFreeBlockSize |
| std::uint32_t | pageSize |
| std::uint32_t | pageSizeFlag |
| std::size_t | memHeapSize |
| std::size_t | initialSize |
| std::size_t | currentSize |
| std::size_t | wastedMemory |
| std::size_t | memAllocated |
| std::size_t | memAllocatedHigh |
| std::size_t | blockMemAllocated |
| char * | memHeap |
| std::int32_t | numBlocks |
| std::uint32_t | pad08C |
| HeapBlock * | blockHead |
| HeapBlock * | blockTail |
| std::int32_t | numFreeBlocks |
| bool | allowDecommits |
| bool | supportsSwapping |
| std::uint16_t | pad0A0 |
| HeapBlock * | smallFreeLists [32] |
| HeapBlockFreeHead * | largeFreeTrees [32] |
Static Public Attributes | |
| static constexpr auto | RTTI = RTTI_AbstractHeap |
Static Public Attributes inherited from RE::IMemoryHeap | |
| 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 |
|
virtual |
|
overridevirtual |
Implements RE::IMemoryStore.
|
virtual |
Reimplemented in RE::MemoryHeap.
|
virtual |
|
virtual |
Reimplemented in RE::MemoryHeap.
|
virtual |
Reimplemented in RE::MemoryHeap.
|
pure virtual |
Implemented in RE::MemoryHeap.
|
pure virtual |
Implemented in RE::MemoryHeap.
|
overridevirtual |
Implements RE::IMemoryHeap.
Reimplemented in RE::MemoryHeap.
|
overridevirtual |
Implements RE::IMemoryStoreBase.
|
overridevirtual |
Implements RE::IMemoryHeap.
|
overridevirtual |
Implements RE::IMemoryHeap.
|
overridevirtual |
Implements RE::IMemoryHeap.
|
overridevirtual |
Implements RE::IMemoryHeap.
|
overridevirtual |
| bool RE::AbstractHeap::allowDecommits |
| HeapBlock* RE::AbstractHeap::blockHead |
| std::size_t RE::AbstractHeap::blockMemAllocated |
| HeapBlock* RE::AbstractHeap::blockTail |
| BSCriticalSection RE::AbstractHeap::criticalSection |
| std::size_t RE::AbstractHeap::currentSize |
| std::size_t RE::AbstractHeap::initialSize |
| HeapBlockFreeHead* RE::AbstractHeap::largeFreeTrees[32] |
| std::size_t RE::AbstractHeap::memAllocated |
| std::size_t RE::AbstractHeap::memAllocatedHigh |
| char* RE::AbstractHeap::memHeap |
| std::size_t RE::AbstractHeap::memHeapSize |
| std::size_t RE::AbstractHeap::minFreeBlockSize |
| const char* RE::AbstractHeap::name |
| std::int32_t RE::AbstractHeap::numBlocks |
| std::int32_t RE::AbstractHeap::numFreeBlocks |
| std::uint32_t RE::AbstractHeap::pad08C |
| std::uint16_t RE::AbstractHeap::pad0A0 |
| std::uint32_t RE::AbstractHeap::pageSize |
| std::uint32_t RE::AbstractHeap::pageSizeFlag |
|
inlinestaticconstexpr |
| HeapBlock* RE::AbstractHeap::smallFreeLists[32] |
| bool RE::AbstractHeap::supportsSwapping |
| std::size_t RE::AbstractHeap::wastedMemory |