81 virtual void do_free(
void* ptr);
static u32 next
Definition CARDUnlock.c:29
JKRExpHeap * JKRCreateExpHeap(u32 size, JKRHeap *parent, bool errorFlag)
Definition JKRExpHeap.h:114
static s32 r2
Definition c_math.cpp:168
static s32 r1
Definition c_math.cpp:166
Definition JKRExpHeap.h:17
bool isValid() const
Definition JKRExpHeap.h:30
JKRExpHeap::CMemBlock * allocBack(u32 size, u8 groupId1, u8 alignment1, u8 groupId2, u8 alignment2)
Definition JKRExpHeap.cpp:894
u32 size
Definition JKRExpHeap.h:44
u8 mFlags
Definition JKRExpHeap.h:42
JKRExpHeap::CMemBlock * allocFore(u32 size, u8 groupId1, u8 alignment1, u8 groupId2, u8 alignment2)
Definition JKRExpHeap.cpp:878
static CMemBlock * getHeapBlock(void *ptr)
Definition JKRExpHeap.cpp:918
int getAlignment() const
Definition JKRExpHeap.h:32
CMemBlock * mPrev
Definition JKRExpHeap.h:45
CMemBlock * getPrevBlock() const
Definition JKRExpHeap.h:34
u8 mGroupId
Definition JKRExpHeap.h:43
u8 getGroupId() const
Definition JKRExpHeap.h:37
void * getContent() const
Definition JKRExpHeap.h:33
bool isTempMemBlock() const
Definition JKRExpHeap.h:31
CMemBlock * mNext
Definition JKRExpHeap.h:46
static CMemBlock * getBlock(void *data)
Definition JKRExpHeap.h:38
void initiate(CMemBlock *prev, CMemBlock *next, u32 size, u8 groupId, u8 alignment)
Definition JKRExpHeap.cpp:868
u32 getSize() const
Definition JKRExpHeap.h:36
int free(JKRExpHeap *heap)
Definition JKRExpHeap.cpp:912
void newGroupId(u8 groupId)
Definition JKRExpHeap.h:29
u16 mMagic
Definition JKRExpHeap.h:41
CMemBlock * getNextBlock() const
Definition JKRExpHeap.h:35
Definition JKRExpHeap.h:11
void * field_0x70
Definition JKRExpHeap.h:101
static JKRExpHeap * createRoot(int maxHeaps, bool errorFlag)
Definition JKRExpHeap.cpp:12
virtual s32 do_changeGroupID(u8 newGroupID)
Definition JKRExpHeap.cpp:407
void removeUsedBlock(CMemBlock *block)
Definition JKRExpHeap.cpp:607
virtual ~JKRExpHeap()
Definition JKRExpHeap.cpp:109
void appendUsedList(CMemBlock *newblock)
Definition JKRExpHeap.cpp:545
u8 mAllocMode
Definition JKRExpHeap.h:96
bool field_0x6e
Definition JKRExpHeap.h:98
CMemBlock * mHeadUsedList
Definition JKRExpHeap.h:105
CMemBlock * mTailFreeList
Definition JKRExpHeap.h:104
virtual s32 do_getFreeSize()
Definition JKRExpHeap.cpp:480
void setAllocationMode(EAllocMode mode)
Definition JKRExpHeap.h:70
virtual bool check()
Definition JKRExpHeap.cpp:692
void recycleFreeBlock(CMemBlock *block)
Definition JKRExpHeap.cpp:624
CMemBlock * mTailUsedList
Definition JKRExpHeap.h:106
s32 getUsedSize(u8 groupId) const
Definition JKRExpHeap.cpp:516
void * allocFromHead(u32 size, int align)
Definition JKRExpHeap.cpp:156
virtual void do_destroy()
Definition JKRExpHeap.cpp:86
virtual void state_register(JKRHeap::TState *p, u32 id) const
Definition JKRExpHeap.cpp:928
virtual bool state_compare(JKRHeap::TState const &r1, JKRHeap::TState const &r2) const
Definition JKRExpHeap.cpp:951
virtual u32 getHeapType()
Definition JKRExpHeap.cpp:964
u8 mCurrentGroupId
Definition JKRExpHeap.h:97
u32 field_0x74
Definition JKRExpHeap.h:102
virtual void do_freeTail()
Definition JKRExpHeap.cpp:390
virtual s32 do_getSize(void *ptr)
Definition JKRExpHeap.cpp:469
EAllocMode
Definition JKRExpHeap.h:13
@ ALLOC_MODE_1
Definition JKRExpHeap.h:14
virtual void do_fillFreeArea()
Definition JKRExpHeap.cpp:405
virtual bool dump_sort()
Definition JKRExpHeap.cpp:807
void joinTwoBlocks(CMemBlock *block)
Definition JKRExpHeap.cpp:676
virtual void do_free(void *ptr)
Definition JKRExpHeap.cpp:368
virtual void * do_alloc(u32 size, int alignment)
Definition JKRExpHeap.cpp:113
virtual void * do_getMaxFreeBlock()
Definition JKRExpHeap.cpp:492
CMemBlock * mHeadFreeList
Definition JKRExpHeap.h:103
virtual void do_freeAll()
Definition JKRExpHeap.cpp:379
static JKRExpHeap * create(u32 size, JKRHeap *parent, bool errorFlag)
Definition JKRExpHeap.cpp:27
void * allocFromTail(u32 size, int align)
Definition JKRExpHeap.cpp:296
void setFreeBlock(CMemBlock *block, CMemBlock *prev, CMemBlock *next)
Definition JKRExpHeap.cpp:570
virtual s32 do_getTotalFreeSize()
Definition JKRExpHeap.cpp:506
virtual u8 do_getCurrentGroupId()
Definition JKRExpHeap.cpp:968
virtual s32 do_resize(void *ptr, u32 size)
Definition JKRExpHeap.cpp:415
void removeFreeBlock(CMemBlock *block)
Definition JKRExpHeap.cpp:590
CMemBlock * getUsedFirst()
Definition JKRExpHeap.h:69
virtual bool dump()
Definition JKRExpHeap.cpp:760
JKRExpHeap(void *data, u32 size, JKRHeap *parent, bool errorFlag)
Definition JKRExpHeap.cpp:98
s32 getTotalUsedSize(void) const
Definition JKRExpHeap.cpp:532
DVDCommandBlock * prev
Definition dvdqueue.c:8
u32 mode
Definition GXTev.c:56
unsigned int size
Definition __os.h:106
unsigned long u32
Definition types.h:12
unsigned short int u16
Definition types.h:10
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8