mem-slab.h
00001
00002 #ifndef MEM_SLAB_H
00003 #define MEM_SLAB_H
00004
00005 #ifdef __cplusplus
00006 extern "C" {
00007 #endif
00008
00009 MGNCS_EXPORT void* slab_new_heap(int min_size, int max_size);
00010
00011 MGNCS_EXPORT void slab_free_heap(void *heap);
00012
00013 MGNCS_EXPORT void* slab_new_mem(void *heap, int size, int padding);
00014
00015 MGNCS_EXPORT void slab_free_mem(void *heap, void *p);
00016
00017 MGNCS_EXPORT int slab_init_default_heap(void);
00018
00019 MGNCS_EXPORT void slab_unit_default_heap(void);
00020
00021 #define _SLAB_ALLOC(size) slab_new_mem(NULL, (size), 0)
00022 #define _SLAB_FREE(p) slab_free_mem(NULL, p)
00023
00024 #ifdef __cplusplus
00025 }
00026 #endif
00027
00028 #endif
00029
00030