CFx SDK Documentation  2022 SP0
Classes | Macros | Functions
ChunkAllocator.h File Reference
#include "RootExport.h"
#include "RxObjectImpl.h"
#include "TD_PackPush.h"
#include "TD_PackPop.h"

Go to the source code of this file.

Classes

class  IAllocator
 
class  AllocatorArray
 
class  AllocatorArrayML
 
class  OdGiRxObjectReImpl< T, TInterface >
 

Macros

#define ODCA_HEAP_OPERATORS()
 
#define ODCA_HEAP_ALLOCATOR()    static AllocatorArrayML s_aAlloc
 
#define ODCA_HEAP_OPERATORS_DEFINE(baseClass, num)
 
#define ODCA_HEAP_OPERATORS_DEFINE_0(baseClass)    ODCA_HEAP_OPERATORS_DEFINE(baseClass, 0)
 
#define ODCA_HEAP_ALLOCATOR_DEFINE(baseClass, numAllocs, allocMask)    AllocatorArrayML baseClass::s_aAlloc(numAllocs, allocMask)
 
#define ODCA_HEAP_ALLOCATOR_DEFINE_1(baseClass)    ODCA_HEAP_ALLOCATOR_DEFINE(baseClass, 1, 0)
 
#define ODCA_HEAP_ALLOCATOR_DEFINE_1_ENH(baseClass)    ODCA_HEAP_ALLOCATOR_DEFINE(baseClass, 1, 1)
 
#define ODCA_HEAP_ALLOCATOR_RESET(baseClass)    baseClass::s_aAlloc.reset()
 
#define ODCA_HEAP_ALLOCATOR_UNINIT(baseClass)    baseClass::s_aAlloc.uninit()
 
#define GIRXREIMPL_CONSTR(ClassName)   OdGiRxObjectReImpl<ClassName>::createObject()
 

Functions

FIRSTDLL_EXPORT void addLocalHeaps (unsigned nThreadId, const unsigned *aThreadId)
 
FIRSTDLL_EXPORT void releaseLocalHeaps (unsigned nThreadId, const unsigned *aThreadId)
 

Macro Definition Documentation

◆ GIRXREIMPL_CONSTR

#define GIRXREIMPL_CONSTR (   ClassName)    OdGiRxObjectReImpl<ClassName>::createObject()

Definition at line 178 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR

#define ODCA_HEAP_ALLOCATOR ( )     static AllocatorArrayML s_aAlloc

Definition at line 123 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR_DEFINE

#define ODCA_HEAP_ALLOCATOR_DEFINE (   baseClass,
  numAllocs,
  allocMask 
)     AllocatorArrayML baseClass::s_aAlloc(numAllocs, allocMask)

Definition at line 139 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR_DEFINE_1

#define ODCA_HEAP_ALLOCATOR_DEFINE_1 (   baseClass)     ODCA_HEAP_ALLOCATOR_DEFINE(baseClass, 1, 0)

Definition at line 142 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR_DEFINE_1_ENH

#define ODCA_HEAP_ALLOCATOR_DEFINE_1_ENH (   baseClass)     ODCA_HEAP_ALLOCATOR_DEFINE(baseClass, 1, 1)

Definition at line 144 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR_RESET

#define ODCA_HEAP_ALLOCATOR_RESET (   baseClass)     baseClass::s_aAlloc.reset()

Definition at line 147 of file ChunkAllocator.h.

◆ ODCA_HEAP_ALLOCATOR_UNINIT

#define ODCA_HEAP_ALLOCATOR_UNINIT (   baseClass)     baseClass::s_aAlloc.uninit()

Definition at line 149 of file ChunkAllocator.h.

◆ ODCA_HEAP_OPERATORS

#define ODCA_HEAP_OPERATORS ( )
Value:
void* operator new(size_t); \
void operator delete(void*)

Definition at line 119 of file ChunkAllocator.h.

◆ ODCA_HEAP_OPERATORS_DEFINE

#define ODCA_HEAP_OPERATORS_DEFINE (   baseClass,
  num 
)
Value:
void* baseClass::operator new(size_t size) \
{ \
return s_aAlloc.getAt(num)->alloc((int)size); \
} \
void baseClass::operator delete(void* p) \
{ \
s_aAlloc.getAt(num)->release(p); \
}
GLsizeiptr size
Definition: gles2_ext.h:182

Definition at line 126 of file ChunkAllocator.h.

◆ ODCA_HEAP_OPERATORS_DEFINE_0

#define ODCA_HEAP_OPERATORS_DEFINE_0 (   baseClass)     ODCA_HEAP_OPERATORS_DEFINE(baseClass, 0)

Definition at line 136 of file ChunkAllocator.h.

Function Documentation

◆ addLocalHeaps()

FIRSTDLL_EXPORT void addLocalHeaps ( unsigned  nThreadId,
const unsigned *  aThreadId 
)

◆ releaseLocalHeaps()

FIRSTDLL_EXPORT void releaseLocalHeaps ( unsigned  nThreadId,
const unsigned *  aThreadId 
)