1*37da2899SCharles.Forsyth #ifndef __OTLAYOUT_UTILS_H__ 2*37da2899SCharles.Forsyth #define __OTLAYOUT_UTILS_H__ 3*37da2899SCharles.Forsyth 4*37da2899SCharles.Forsyth #include "otlayout.h" 5*37da2899SCharles.Forsyth 6*37da2899SCharles.Forsyth OTL_BEGIN_HEADER 7*37da2899SCharles.Forsyth 8*37da2899SCharles.Forsyth OTL_LOCAL( OTL_Error ) 9*37da2899SCharles.Forsyth otl_mem_alloc( OTL_Pointer* pblock, 10*37da2899SCharles.Forsyth OTL_ULong size, 11*37da2899SCharles.Forsyth OTL_Memory memory ); 12*37da2899SCharles.Forsyth 13*37da2899SCharles.Forsyth OTL_LOCAL( void ) 14*37da2899SCharles.Forsyth otl_mem_free( OTL_Pointer* pblock, 15*37da2899SCharles.Forsyth OTL_Memory memory ); 16*37da2899SCharles.Forsyth 17*37da2899SCharles.Forsyth OTL_LOCAL( OTL_Error ) 18*37da2899SCharles.Forsyth otl_mem_realloc( OTL_Pointer *pblock, 19*37da2899SCharles.Forsyth OTL_ULong cur_size, 20*37da2899SCharles.Forsyth OTL_ULong new_size, 21*37da2899SCharles.Forsyth OTL_Memory memory ); 22*37da2899SCharles.Forsyth 23*37da2899SCharles.Forsyth #define OTL_MEM_ALLOC(p,s) otl_mem_alloc( (void**)&(p), (s), memory ) 24*37da2899SCharles.Forsyth #define OTL_MEM_FREE(p) otl_mem_free( (void**)&(p), memory ) 25*37da2899SCharles.Forsyth #define OTL_MEM_REALLOC(p,c,n) otl_mem_realloc( (void**)&(p), (c), (s), memory ) 26*37da2899SCharles.Forsyth 27*37da2899SCharles.Forsyth #define OTL_MEM_NEW(p) OTL_MEM_ALLOC(p,sizeof(*(p))) 28*37da2899SCharles.Forsyth #define OTL_MEM_NEW_ARRAY(p,c) OTL_MEM_ALLOC(p,(c)*sizeof(*(p))) 29*37da2899SCharles.Forsyth #define OTL_MEM_RENEW_ARRAY(p,c,n) OTL_MEM_REALLOC(p,(c)*sizeof(*(p)),(n)*sizeof(*(p))) 30*37da2899SCharles.Forsyth 31*37da2899SCharles.Forsyth OTL_END_HEADER 32*37da2899SCharles.Forsyth 33*37da2899SCharles.Forsyth #endif /* __OTLAYOUT_UTILS_H__ */ 34