ucx/mempool.h

Tue, 02 Oct 2012 11:18:47 +0200

author
Mike Becker <universe@uap-core.de>
date
Tue, 02 Oct 2012 11:18:47 +0200
changeset 38
35f67a8ef875
parent 16
b4769e4eb4d1
child 48
621a4430c404
permissions
-rw-r--r--

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 */

mercurial