Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
JKRAramHeap Class Reference

#include <JKRAramHeap.h>

+ Inheritance diagram for JKRAramHeap:
+ Collaboration diagram for JKRAramHeap:

Public Types

enum  EAllocMode { HEAD = 0 , TAIL = 1 }
 

Public Member Functions

 JKRAramHeap (u32, u32)
 
virtual ~JKRAramHeap ()
 
JKRAramBlockalloc (u32, EAllocMode)
 
JKRAramBlockallocFromHead (u32)
 
JKRAramBlockallocFromTail (u32)
 
u32 getFreeSize (void)
 
u32 getTotalFreeSize (void)
 
void dump (void)
 
void free (JKRAramBlock *block)
 
u8 getCurrentGroupID () const
 
JKRHeapgetMgrHeap () const
 
- Public Member Functions inherited from JKRDisposer
 JKRDisposer ()
 
virtual ~JKRDisposer ()
 

Public Attributes

OSMutex mMutex
 
JKRHeapmHeap
 
u32 mHeadAddress
 
u32 mTailAddress
 
u32 mSize
 
u8 mGroupId
 
u8 padding_0x41 [3]
 
- Public Attributes inherited from JKRDisposer
JKRHeapmHeap
 
JSULink< JKRDisposermLink
 

Static Public Attributes

static JSUList< JKRAramBlocksAramList
 

Private Member Functions

void lock ()
 
void unlock ()
 

Member Enumeration Documentation

◆ EAllocMode

Enumerator
HEAD 
TAIL 

Constructor & Destructor Documentation

◆ JKRAramHeap()

JKRAramHeap::JKRAramHeap ( u32  startAddress,
u32  size 
)

◆ ~JKRAramHeap()

JKRAramHeap::~JKRAramHeap ( )
virtual

Member Function Documentation

◆ alloc()

JKRAramBlock * JKRAramHeap::alloc ( u32  size,
JKRAramHeap::EAllocMode  allocationMode 
)

◆ allocFromHead()

JKRAramBlock * JKRAramHeap::allocFromHead ( u32  size)

◆ allocFromTail()

JKRAramBlock * JKRAramHeap::allocFromTail ( u32  size)

◆ dump()

void JKRAramHeap::dump ( void  )

◆ free()

void JKRAramHeap::free ( JKRAramBlock block)
inline

◆ getCurrentGroupID()

u8 JKRAramHeap::getCurrentGroupID ( ) const
inline

◆ getFreeSize()

u32 JKRAramHeap::getFreeSize ( void  )

◆ getMgrHeap()

JKRHeap * JKRAramHeap::getMgrHeap ( ) const
inline

◆ getTotalFreeSize()

u32 JKRAramHeap::getTotalFreeSize ( void  )

◆ lock()

void JKRAramHeap::lock ( )
inlineprivate

◆ unlock()

void JKRAramHeap::unlock ( )
inlineprivate

Member Data Documentation

◆ mGroupId

u8 JKRAramHeap::mGroupId

◆ mHeadAddress

u32 JKRAramHeap::mHeadAddress

◆ mHeap

JKRHeap* JKRAramHeap::mHeap

◆ mMutex

OSMutex JKRAramHeap::mMutex

◆ mSize

u32 JKRAramHeap::mSize

◆ mTailAddress

u32 JKRAramHeap::mTailAddress

◆ padding_0x41

u8 JKRAramHeap::padding_0x41[3]

◆ sAramList

JSUList< JKRAramBlock > JKRAramHeap::sAramList
static

The documentation for this class was generated from the following files: