SSBM Decomp
Loading...
Searching...
No Matches
objalloc.h
Go to the documentation of this file.
1#ifndef _objalloc_h_
2#define _objalloc_h_
3
4#include <platform.h>
5
6#include "baselib/debug.h"
7
8#include <common_structs.h>
9
10typedef struct _objheap {
15} objheap;
16
17typedef struct _HSD_ObjAllocLink {
18 struct _HSD_ObjAllocLink* next;
20
35
37{
38 HSD_ASSERT(205, data);
39 return data->used;
40}
41
43{
44 HSD_ASSERT(221, data);
45 return data->free;
46}
47
49{
50 HSD_ASSERT(237, data);
51 return data->peak;
52}
53
54void HSD_ObjSetHeap(u32 size, void* ptr);
57void HSD_ObjFree(HSD_ObjAllocData* data, void* obj);
58void _HSD_ObjAllocForgetMemory(void* low, void* high);
59void HSD_ObjAllocInit(HSD_ObjAllocData* data, size_t size, u32 align);
60
61#endif
void * ptr
Definition __types.h:6
#define HSD_ASSERT(line, cond)
Definition debug.h:21
s32 HSD_ObjAllocAddFree(HSD_ObjAllocData *data, u32 num)
Definition objalloc.c:21
void HSD_ObjFree(HSD_ObjAllocData *data, void *obj)
Definition objalloc.c:119
void * HSD_ObjAlloc(HSD_ObjAllocData *data)
Definition objalloc.c:71
void HSD_ObjSetHeap(u32 size, void *ptr)
Definition objalloc.c:13
void HSD_ObjAllocInit(HSD_ObjAllocData *data, size_t size, u32 align)
Definition objalloc.c:140
static u32 HSD_ObjAllocGetUsing(HSD_ObjAllocData *data)
Definition objalloc.h:36
void _HSD_ObjAllocForgetMemory(void *low, void *high)
Definition objalloc.c:158
static u32 HSD_ObjAllocGetPeak(HSD_ObjAllocData *data)
Definition objalloc.h:48
static u32 HSD_ObjAllocGetFreed(HSD_ObjAllocData *data)
Definition objalloc.h:42
unsigned long u32
An unsigned 32-bit integer.
Definition platform.h:26
signed long s32
A signed 32-bit integer.
Definition platform.h:14
void * obj
Definition pobj.c:49
Definition objalloc.h:21
u32 num_limit_flag
Definition objalloc.h:22
u32 heap_limit_size
Definition objalloc.h:29
u32 heap_limit_flag
Definition objalloc.h:23
u32 free
Definition objalloc.h:26
u32 align
Definition objalloc.h:32
u32 num_limit
Definition objalloc.h:28
u32 used
Definition objalloc.h:25
u32 size
Definition objalloc.h:31
HSD_ObjAllocLink * freehead
Definition objalloc.h:24
struct _HSD_ObjAllocData * next
Definition objalloc.h:33
u32 peak
Definition objalloc.h:27
u32 heap_limit_num
Definition objalloc.h:30
Definition objalloc.h:10
u32 top
Definition objalloc.h:11
u32 curr
Definition objalloc.h:12
u32 remain
Definition objalloc.h:14
u32 size
Definition objalloc.h:13