42 #ifdef GFSM_USE_GALLOCATOR
45 extern GAllocator *gfsm_node_allocator;
48 extern GAllocator *gfsm_slist_allocator;
51 extern GAllocator *gfsm_list_allocator;
54 extern gboolean gfsm_allocators_enabled;
58 void gfsm_allocators_init(
void);
62 void gfsm_allocators_enable(
void);
66 void gfsm_allocators_disable(
void);
70 void gfsm_allocators_free(
void);
95 #ifdef GFSM_USE_GSLICE
96 # define gfsm_slice_new(type) g_slice_new(type)
98 # define gfsm_slice_new(type) g_new(type,1)
102 #ifdef GFSM_USE_GSLICE
103 # define gfsm_slice_new_n(type,n) (type*)g_slice_alloc(sizeof(type)*(n))
105 # define gfsm_slice_new_n(type,n) (type*)g_malloc(sizeof(type)*(n))
109 #ifdef GFSM_USE_GSLICE
110 # define gfsm_slice_new0(type) g_slice_new0(type)
112 # define gfsm_slice_new0(type) g_new0(type,1)
116 #ifdef GFSM_USE_GSLICE
117 # define gfsm_slice_new0_n(type,n) (type*)g_slice_alloc0(sizeof(type)*(n))
119 # define gfsm_slice_new0_n(type,n) (type*)g_malloc0(sizeof(type)*(n))
123 #ifdef GFSM_USE_GSLICE
124 # define gfsm_slice_dup(type,mem) g_slice_dup(type,(mem))
126 # define gfsm_slice_dup(type,mem) g_memdup((mem),sizeof(type))
130 #ifdef GFSM_USE_GSLICE
131 # define gfsm_slice_free(type,mem) g_slice_free(type,(type*)(mem))
133 # define gfsm_slice_free(type,mem) g_free((mem))
137 #ifdef GFSM_USE_GSLICE
138 # define gfsm_slice_free_n(type,mem,n) g_slice_free1(sizeof(type)*(n),(gpointer)(mem))
140 # define gfsm_slice_free_n(type,mem,n) g_free((gpointer)(mem))
156 #define gfsm_new(struct_type, n_structs) g_new(struct_type, (n_structs))
159 #define gfsm_new0(struct_type, n_structs) g_new0(struct_type, (n_structs))
174 #define gfsm_string_dup g_strdup
191 #ifdef GFSM_INLINE_ENABLED
192 # include <gfsmMem.hi>