mirror of
https://github.com/wiiu-env/wut.git
synced 2024-12-13 22:21:52 +01:00
63 lines
1.3 KiB
C
63 lines
1.3 KiB
C
|
#pragma once
|
||
|
#include <wut.h>
|
||
|
|
||
|
WUT_LIB_HEADER_START
|
||
|
|
||
|
typedef uint32_t MEMFrameHeapFreeMode;
|
||
|
|
||
|
enum MEMFrameHeapFreeMode
|
||
|
{
|
||
|
MEM_FRAME_HEAP_FREE_FROM_BOTTOM = 1 << 0,
|
||
|
MEM_FRAME_HEAP_FREE_FROM_TOP = 1 << 1,
|
||
|
};
|
||
|
|
||
|
MEMFrameHeap *
|
||
|
MEMCreateFrmHeap(MEMFrameHeap *heap,
|
||
|
uint32_t size);
|
||
|
|
||
|
MEMFrameHeap *
|
||
|
MEMCreateFrmHeapEx(MEMFrameHeap *heap,
|
||
|
uint32_t size,
|
||
|
uint16_t flags);
|
||
|
|
||
|
void *
|
||
|
MEMDestroyFrmHeap(MEMFrameHeap *heap);
|
||
|
|
||
|
void *
|
||
|
MEMAllocFromFrmHeap(MEMFrameHeap *heap,
|
||
|
uint32_t size);
|
||
|
|
||
|
void *
|
||
|
MEMAllocFromFrmHeapEx(MEMFrameHeap *heap,
|
||
|
uint32_t size,
|
||
|
int alignment);
|
||
|
|
||
|
void
|
||
|
MEMFreeToFrmHeap(MEMFrameHeap *heap,
|
||
|
MEMFrameHeapFreeMode mode);
|
||
|
|
||
|
BOOL
|
||
|
MEMRecordStateForFrmHeap(MEMFrameHeap *heap,
|
||
|
uint32_t tag);
|
||
|
|
||
|
BOOL
|
||
|
MEMFreeByStateToFrmHeap(MEMFrameHeap *heap,
|
||
|
uint32_t tag);
|
||
|
|
||
|
uint32_t
|
||
|
MEMAdjustFrmHeap(MEMFrameHeap *heap);
|
||
|
|
||
|
uint32_t
|
||
|
MEMResizeForMBlockFrmHeap(MEMFrameHeap *heap,
|
||
|
uint32_t addr,
|
||
|
uint32_t size);
|
||
|
|
||
|
uint32_t
|
||
|
MEMGetAllocatableSizeForFrmHeap(MEMFrameHeap *heap);
|
||
|
|
||
|
uint32_t
|
||
|
MEMGetAllocatableSizeForFrmHeapEx(MEMFrameHeap *heap,
|
||
|
int alignment);
|
||
|
|
||
|
WUT_LIB_HEADER_END
|