/* Copyright (c) 2001, Stanford University * All rights reserved. * * See the file LICENSE.txt for information on redistributing this software. */ #ifndef CR_MEM_H #define CR_MEM_H #include #ifdef __cplusplus extern "C" { #endif #define DEBUG_MEM 0 void *crAllocDebug( unsigned int nbytes, const char *file, int line ); void *crCallocDebug( unsigned int nbytes, const char *file, int line ); #if DEBUG_MEM #define crAlloc(N) crAllocDebug(N, __FILE__, __LINE__) #define crCalloc(N) crCallocDebug(N, __FILE__, __LINE__) #else extern DECLEXPORT(void *) crAlloc( unsigned int nbytes ); extern DECLEXPORT(void *) crCalloc( unsigned int nbytes ); #endif extern DECLEXPORT(void) crRealloc( void **ptr, unsigned int bytes ); extern DECLEXPORT(void) crFree( void *ptr ); extern DECLEXPORT(void) crMemcpy( void *dst, const void *src, unsigned int bytes ); extern DECLEXPORT(void) crMemset( void *ptr, int value, unsigned int bytes ); extern DECLEXPORT(void) crMemZero( void *ptr, unsigned int bytes ); extern DECLEXPORT(int) crMemcmp( const void *p1, const void *p2, unsigned int bytes ); #ifdef __cplusplus } #endif #endif /* CR_MEM_H */