2
3
4
5
6
7
8
9
11#ifndef GIMBAL_IALLOCATOR_H
12#define GIMBAL_IALLOCATOR_H
15#include "../../core/gimbal_ctx.h"
18
19
20
22#define GBL_IALLOCATOR(self) (GBL_CAST(GblIAllocator, self))
24#define GBL_IALLOCATOR_GET_CLASS(self) (GBL_CLASSOF(GblIAllocator, self))
27#define GBL_SELF_TYPE GblIAllocator
32
33
34
35
36
37
38
39
40
43 GBL_RESULT (*pFnAlloc) (
GBL_SELF,
const GblStackFrame* pFrame, size_t size, size_t align,
const char* pDbgStr,
void** ppData);
45 GBL_RESULT (*pFnRealloc) (
GBL_SELF,
const GblStackFrame* pFrame,
void* pData, size_t newSize, size_t newAlign,
void** ppNewData);
47 GBL_RESULT (*pFnFree) (
GBL_SELF,
const GblStackFrame* pFrame,
void* pData);
49 GBL_RESULT (*pFnParent) (
GBL_CSELF, GblIAllocator** ppParent);
56
57
58
60 const GblStackFrame* pFrame,
63 const char* pDebugString,
67 const GblStackFrame* pFrame,
74 const GblStackFrame* pFrame,
#define GBL_CLASS_CAST(cType, klass)
#define GBL_TYPEID(instanceStruct)
#define GBL_INTERFACE_END
#define GBL_INTERFACE_DERIVE(...)
GblType GblIAllocator_type(void)
Returns the GblType UUID associated with the GblIAllocator type.