13 using MemoryWalkCallback = void(
void* a_start, std::size_t a_size,
bool a_allocated, std::int32_t a_pool,
void* a_param);
55 virtual void BlockFree(
void* a_ptr, std::int32_t a_numBytes) = 0;
56 virtual void*
BufAlloc(std::int32_t& a_reqNumBytesInOut);
57 virtual void BufFree(
void* a_ptr, std::int32_t a_numBytes);
58 virtual void*
BufRealloc(
void* a_ptrOld, std::int32_t a_oldNumBytes, std::int32_t& a_reqNumBytesInOut);
59 virtual void BlockAllocBatch(
void** a_ptrsOut, std::int32_t a_numPtrs, std::int32_t a_blockSize);
60 virtual void BlockFreeBatch(
void** a_ptrsIn, std::int32_t a_numPtrs, std::int32_t a_blockSize);
Definition: hkMemoryAllocator.h:8
static constexpr auto RTTI
Definition: hkMemoryAllocator.h:10
virtual void * BufAlloc(std::int32_t &a_reqNumBytesInOut)
void(void *a_start, std::size_t a_size, bool a_allocated, std::int32_t a_pool, void *a_param) MemoryWalkCallback
Definition: hkMemoryAllocator.h:13
virtual void ResetPeakMemoryStatistics()
virtual ~hkMemoryAllocator()
virtual void BlockAllocBatch(void **a_ptrsOut, std::int32_t a_numPtrs, std::int32_t a_blockSize)
virtual void BlockFree(void *a_ptr, std::int32_t a_numBytes)=0
static constexpr auto VTABLE
Definition: hkMemoryAllocator.h:11
virtual void * BufRealloc(void *a_ptrOld, std::int32_t a_oldNumBytes, std::int32_t &a_reqNumBytesInOut)
virtual std::int32_t GetAllocatedSize(const void *a_obj, std::int32_t a_numBytes)=0
MemoryState
Definition: hkMemoryAllocator.h:16
virtual void GetMemoryStatistics(MemoryStatistics &a_usage)=0
virtual void * BlockAlloc(std::int32_t a_numBytes)=0
virtual void BlockFreeBatch(void **a_ptrsIn, std::int32_t a_numPtrs, std::int32_t a_blockSize)
virtual void BufFree(void *a_ptr, std::int32_t a_numBytes)
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_hkMemoryAllocator
Definition: Offsets_VTABLE.h:13828
hkResult
Definition: hkBaseTypes.h:9
constexpr REL::ID RTTI_hkMemoryAllocator(static_cast< std::uint64_t >(689584))
Definition: hkMemoryAllocator.h:37
virtual hkResult SetMemorySoftLimit(std::size_t a_maxMemory)=0
virtual void GarbageCollect()=0
virtual hkResult WalkMemory(MemoryWalkCallback *a_callback, void *a_param)=0
virtual std::size_t GetMemorySoftLimit() const =0
virtual void IncrementalGarbageCollect(std::int32_t a_numBlocks)=0
virtual bool CanAllocTotal(std::int32_t a_numBytes)=0
virtual ~ExtendedInterface()
Definition: hkMemoryAllocator.h:22
std::int64_t largestBlock
Definition: hkMemoryAllocator.h:32
std::int64_t totalAvailable
Definition: hkMemoryAllocator.h:31
std::int64_t allocated
Definition: hkMemoryAllocator.h:27
std::int64_t available
Definition: hkMemoryAllocator.h:30
std::int64_t peakInUse
Definition: hkMemoryAllocator.h:29
std::int64_t inUse
Definition: hkMemoryAllocator.h:28
static constexpr std::int64_t INFINITE_SIZE
Definition: hkMemoryAllocator.h:24