62 #define BFT_MALLOC(_ptr, _ni, _type) \ 63 _ptr = (_type *) bft_mem_malloc(_ni, sizeof(_type), \ 64 #_ptr, __FILE__, __LINE__) 78 #define BFT_REALLOC(_ptr, _ni, _type) \ 79 _ptr = (_type *) bft_mem_realloc(_ptr, _ni, sizeof(_type), \ 80 #_ptr, __FILE__, __LINE__) 96 #define BFT_FREE(_ptr) \ 97 bft_mem_free(_ptr, #_ptr, __FILE__, __LINE__), _ptr = NULL 101 #define BFT_FREE(_ptr) \ 102 _ptr = bft_mem_free(_ptr, #_ptr, __FILE__, __LINE__) 119 #define BFT_MEMALIGN(_ptr, _align, _ni, _type) \ 120 _ptr = (_type *) bft_mem_memalign(_align, _ni, sizeof(_type), \ 121 #_ptr, __FILE__, __LINE__) 134 const char *var_name,
135 const char *file_name,
140 const char *var_name,
141 const char *file_name,
219 const char *var_name,
220 const char *file_name,
247 const char *var_name,
248 const char *file_name,
272 const char *var_name,
273 const char *file_name,
302 const char *var_name,
303 const char *file_name,
int bft_mem_have_memalign(void)
Indicate if a memory aligned allocation variant is available.
Definition: bft_mem.c:1300
size_t bft_mem_size_current(void)
Return current theoretical dynamic memory allocated.
Definition: bft_mem.c:1274
void bft_mem_end(void)
End memory handling.
Definition: bft_mem.c:719
size_t() bft_mem_get_size_t(void *ptr)
Definition: bft_mem.h:128
void bft_mem_alternative_set(bft_mem_get_size_t *get_size_func, bft_mem_realloc_t *realloc_func, bft_mem_free_t *free_func)
Definition: bft_mem.c:1355
void * bft_mem_malloc(size_t ni, size_t size, const char *var_name, const char *file_name, int line_num)
Allocate memory for ni elements of size bytes.
Definition: bft_mem.c:815
#define BEGIN_C_DECLS
Definition: cs_defs.h:510
void() bft_error_handler_t(const char *const file_name, const int line_num, const int sys_error_code, const char *const format, va_list arg_ptr)
Function pointer to opaque error handler.
Definition: bft_error.h:52
void *() bft_mem_realloc_t(void *ptr, size_t ni, size_t size, const char *var_name, const char *file_name, int line_num)
Definition: bft_mem.h:131
void * bft_mem_memalign(size_t alignment, size_t ni, size_t size, const char *var_name, const char *file_name, int line_num)
Allocate aligned memory for ni elements of size bytes.
Definition: bft_mem.c:1145
void() bft_mem_free_t(void *ptr, const char *var_name, const char *file_name, int line_num)
Definition: bft_mem.h:139
void bft_mem_error_handler_set(bft_error_handler_t *handler)
Associates an error handler with the bft_mem_...() functions.
Definition: bft_mem.c:1333
void bft_mem_init(const char *log_file_name)
Initialize memory handling.
Definition: bft_mem.c:642
void * bft_mem_free(void *ptr, const char *var_name, const char *file_name, int line_num)
Free allocated memory.
Definition: bft_mem.c:1056
size_t bft_mem_get_block_size(void *ptr)
Return block size associated with a given pointer.
Definition: bft_mem.c:1244
#define END_C_DECLS
Definition: cs_defs.h:511
int bft_mem_initialized(void)
Indicates if bft_mem_...() functions are initialized.
Definition: bft_mem.c:793
void * bft_mem_realloc(void *ptr, size_t ni, size_t size, const char *var_name, const char *file_name, int line_num)
Reallocate memory for ni elements of size bytes.
Definition: bft_mem.c:899
bft_error_handler_t * bft_mem_error_handler_get(void)
Returns the error handler associated with the bft_mem_...() functions.
Definition: bft_mem.c:1316
size_t bft_mem_size_max(void)
Return maximum theoretical dynamic memory allocated.
Definition: bft_mem.c:1286