RetroArch
memheap.h
Go to the documentation of this file.
1 #pragma once
2 #include <wiiu/types.h>
3 #include <wiiu/os/spinlock.h>
4 #include "memlist.h"
5 
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 
10 typedef enum MEMHeapFillType
11 {
16 
17 typedef enum MEMHeapTag
18 {
19  MEM_BLOCK_HEAP_TAG = 0x424C4B48u,
20  MEM_EXPANDED_HEAP_TAG = 0x45585048u,
21  MEM_FRAME_HEAP_TAG = 0x46524D48u,
22  MEM_UNIT_HEAP_TAG = 0x554E5448u,
23  MEM_USER_HEAP_TAG = 0x55535248u,
24 } MEMHeapTag;
25 
26 typedef enum MEMHeapFlags
27 {
31 } MEMHeapFlags;
32 
33 typedef struct MEMHeapHeader
34 {
37 
40 
43 
45  void *dataStart;
46 
48  void *dataEnd;
49 
52 
55 
58 
62 void MEMDumpHeap(MEMHeapHeader *heap);
63 
68 
73 
78 
79 #ifdef __cplusplus
80 }
81 #endif
uint32_t MEMGetFillValForHeap(MEMHeapFillType type)
Definition: memheap.h:14
void MEMSetFillValForHeap(MEMHeapFillType type, uint32_t value)
Definition: memheap.h:29
MEMMemoryLink link
Definition: memheap.h:39
MEMHeapFillType
Definition: memheap.h:10
OSSpinLock lock
Definition: memheap.h:51
Definition: memlist.h:8
Definition: memheap.h:19
Definition: spinlock.h:9
Definition: memheap.h:33
uint32_t flags
Definition: memheap.h:54
GLenum type
Definition: glext.h:6233
MEMHeapHeader * MEMFindContainHeap(void *block)
uint32_t __unknown[0x3]
Definition: memheap.h:56
Definition: memheap.h:21
MEMHeapTag
Definition: memheap.h:17
Definition: memheap.h:12
static int block
Definition: psp2.c:31
void MEMDumpHeap(MEMHeapHeader *heap)
void * dataEnd
Definition: memheap.h:48
Definition: memheap.h:20
struct MEMHeapHeader MEMHeapHeader
MEMMemoryList list
Definition: memheap.h:42
MEMHeapFlags
Definition: memheap.h:26
GLsizei const GLfloat * value
Definition: glext.h:6709
MEMHeapTag tag
Definition: memheap.h:36
Definition: memheap.h:28
void * dataStart
Definition: memheap.h:45
Definition: memheap.h:22
Definition: memlist.h:14
unsigned int uint32_t
Definition: stdint.h:126
Definition: memheap.h:13
Definition: memheap.h:30
Definition: memheap.h:23