Tue, 02 Oct 2012 11:18:47 +0200
added missing stddef includes
added no break comments
1 /*
2 *
3 */
5 #ifndef MPOOL_H
6 #define MPOOL_H
8 #include <stddef.h>
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
14 typedef void(*ucx_destructor)(void*);
16 typedef struct {
17 void **data;
18 size_t ndata;
19 size_t size;
20 } UcxMempool;
22 #define ucx_mempool_new_default() ucx_mempool_new(16)
23 UcxMempool *ucx_mempool_new(size_t n);
24 int ucx_mempool_chcap(UcxMempool *pool, size_t newcap);
26 void *ucx_mempool_malloc(UcxMempool *pool, size_t n);
27 void *ucx_mempool_calloc(UcxMempool *pool, size_t nelem, size_t elsize);
28 void *ucx_mempool_realloc(UcxMempool *pool, void *ptr, size_t n);
30 void ucx_mempool_free(UcxMempool *pool);
32 void ucx_mempool_set_destr(void *ptr, ucx_destructor func);
33 void ucx_mempool_reg_destr(UcxMempool *pool, void *ptr, ucx_destructor destr);
36 #ifdef __cplusplus
37 }
38 #endif
40 #endif /* MPOOL_H */