1#ifndef SEAD_UNIT_HEAP_H_
2#define SEAD_UNIT_HEAP_H_
4#include <container/seadFreeList.h>
5#include <heap/seadHeap.h>
19 void*
tryAlloc(size_t size, s32 alignment)
override;
20 void free(
void* ptr)
override;
46static_assert(
sizeof(
UnitHeap) == 0xA8,
"sead::UnitHeap size mismatch");
Definition seadFreeList.h:10
Definition seadUnitHeap.h:10
size_t getMaxAllocatableSize(int) const override
bool isInclude(const void *) const override
static UnitHeap * tryCreateWithBlockNum(u32 block_size, u32 num, const SafeString &name, s32 alignment=4, Heap *parent=nullptr, bool enable_lock=false)
bool isResizable() const override
FreeList mFreeList
Definition seadUnitHeap.h:43
u32 mBlockSize
Definition seadUnitHeap.h:39
void * resizeFront(void *, size_t) override
u32 mAreaSize
Definition seadUnitHeap.h:41
bool isFreeable() const override
const void * getEndAddress() const override
void * tryAlloc(size_t size, s32 alignment) override
void free(void *ptr) override
size_t getFreeSize() const override
u32 mFreeSize
Definition seadUnitHeap.h:42
static UnitHeap * tryCreate(u32 size, const SafeString &name, u32 block_size, s32 alignment=4, Heap *parent=nullptr, bool enable_lock=false)
void * mAreaStart
Definition seadUnitHeap.h:40
bool isAdjustable() const override
void * resizeBack(void *, size_t) override
const void * getStartAddress() const override
UnitHeap(const SafeString &name, Heap *parent, void *address, u32 size, u32, bool)
size_t getSize() const override
Definition seadAssert.h:44
SafeStringBase< char > SafeString
Definition seadSafeString.h:409
#define SEAD_RTTI_OVERRIDE(CLASS, BASE)
Definition seadRuntimeTypeInfo.h:96