@@ -57,7 +57,7 @@ void equeue_destroy(equeue_t *q) {
5757 while (q -> queue ) {
5858 struct event * e = q -> queue ;
5959 q -> queue = e -> next ;
60- event_dealloc (q , e + 1 );
60+ equeue_dealloc (q , e + 1 );
6161 }
6262
6363 events_mutex_destroy (& q -> freelock );
@@ -67,7 +67,7 @@ void equeue_destroy(equeue_t *q) {
6767}
6868
6969// equeue allocation functions
70- static void * equeue_alloc (equeue_t * q , unsigned size ) {
70+ static void * equeue_mem_alloc (equeue_t * q , unsigned size ) {
7171 size = size + sizeof (unsigned );
7272 size = (size + sizeof (unsigned )-1 ) & ~(sizeof (unsigned )-1 );
7373 if (size < sizeof (struct equeue_chunk )) {
@@ -103,7 +103,7 @@ static void *equeue_alloc(equeue_t *q, unsigned size) {
103103 return 0 ;
104104}
105105
106- static void equeue_dealloc (equeue_t * q , void * e ) {
106+ static void equeue_mem_dealloc (equeue_t * q , void * e ) {
107107 struct equeue_chunk * c = (struct equeue_chunk * )((unsigned * )e - 1 );
108108
109109 events_mutex_lock (& q -> freelock );
@@ -126,36 +126,36 @@ static void equeue_dealloc(equeue_t *q, void *e) {
126126}
127127
128128// event allocation functions
129- static inline int event_next_id (equeue_t * q ) {
129+ static inline int equeue_next_id (equeue_t * q ) {
130130 int id = q -> next_id ++ ;
131131 if (q -> next_id < 0 ) {
132132 q -> next_id = 42 ;
133133 }
134134 return id ;
135135}
136136
137- void * event_alloc (equeue_t * q , unsigned size ) {
138- struct event * e = equeue_alloc (q , sizeof (struct event ) + size );
137+ void * equeue_alloc (equeue_t * q , unsigned size ) {
138+ struct event * e = equeue_mem_alloc (q , sizeof (struct event ) + size );
139139 if (!e ) {
140140 return 0 ;
141141 }
142142
143- e -> id = event_next_id (q );
143+ e -> id = equeue_next_id (q );
144144 e -> target = 0 ;
145145 e -> period = -1 ;
146146 e -> dtor = 0 ;
147147
148148 return e + 1 ;
149149}
150150
151- void event_dealloc (equeue_t * q , void * p ) {
151+ void equeue_dealloc (equeue_t * q , void * p ) {
152152 struct event * e = (struct event * )p - 1 ;
153153
154154 if (e -> dtor ) {
155155 e -> dtor (e + 1 );
156156 }
157157
158- equeue_dealloc (q , e );
158+ equeue_mem_dealloc (q , e );
159159}
160160
161161// equeue scheduling functions
@@ -187,10 +187,10 @@ static struct event *equeue_dequeue(equeue_t *q, int id) {
187187 return 0 ;
188188}
189189
190- static int equeue_post (equeue_t * q , struct event * e , int ms ) {
190+ static int equeue_post_in (equeue_t * q , struct event * e , int ms ) {
191191 int id = e -> id ;
192192 if (ms < 0 ) {
193- event_dealloc (q , e + 1 );
193+ equeue_dealloc (q , e + 1 );
194194 return id ;
195195 }
196196
@@ -202,23 +202,30 @@ static int equeue_post(equeue_t *q, struct event *e, int ms) {
202202 return id ;
203203}
204204
205- static void equeue_cancel (equeue_t * q , int id ) {
205+ int equeue_post (equeue_t * q , void (* cb )(void * ), void * p ) {
206+ struct event * e = (struct event * )p - 1 ;
207+ e -> cb = cb ;
208+ int id = equeue_post_in (q , e , e -> target );
209+ return id ;
210+ }
211+
212+ void equeue_cancel (equeue_t * q , int id ) {
206213 events_mutex_lock (& q -> queuelock );
207214 struct event * e = equeue_dequeue (q , id );
208215 events_mutex_unlock (& q -> queuelock );
209216
210217 if (e ) {
211- event_dealloc (q , e + 1 );
218+ equeue_dealloc (q , e + 1 );
212219 }
213220}
214221
215222void equeue_break (equeue_t * q ) {
216- equeue_post (q , & q -> break_ , 0 );
223+ equeue_post_in (q , & q -> break_ , 0 );
217224}
218225
219226void equeue_dispatch (equeue_t * q , int ms ) {
220227 if (ms >= 0 ) {
221- equeue_post (q , & q -> break_ , ms );
228+ equeue_post_in (q , & q -> break_ , ms );
222229 }
223230
224231 while (1 ) {
@@ -244,7 +251,7 @@ void equeue_dispatch(equeue_t *q, int ms) {
244251
245252 if (e -> period >= 0 ) {
246253 // requeue periodic tasks to avoid race conditions
247- // in event_cancel
254+ // in equeue_cancel
248255 equeue_enqueue (q , e , e -> period );
249256 }
250257 events_mutex_unlock (& q -> queuelock );
@@ -257,7 +264,7 @@ void equeue_dispatch(equeue_t *q, int ms) {
257264 e -> cb (e + 1 );
258265
259266 if (e -> period < 0 ) {
260- event_dealloc (q , e + 1 );
267+ equeue_dealloc (q , e + 1 );
261268 }
262269 }
263270
@@ -281,18 +288,6 @@ void event_dtor(void *p, void (*dtor)(void *)) {
281288 e -> dtor = dtor ;
282289}
283290
284- // event operations
285- int event_post (equeue_t * q , void (* cb )(void * ), void * p ) {
286- struct event * e = (struct event * )p - 1 ;
287- e -> cb = cb ;
288- int id = equeue_post (q , e , e -> target );
289- return id ;
290- }
291-
292- void event_cancel (equeue_t * q , int id ) {
293- equeue_cancel (q , id );
294- }
295-
296291// simple callbacks
297292struct ecallback {
298293 void (* cb )(void * );
@@ -304,31 +299,31 @@ static void ecallback_dispatch(void *p) {
304299 e -> cb (e -> data );
305300}
306301
307- int event_call (equeue_t * q , void (* cb )(void * ), void * data ) {
308- struct ecallback * e = event_alloc (q , sizeof (struct ecallback ));
302+ int equeue_call (equeue_t * q , void (* cb )(void * ), void * data ) {
303+ struct ecallback * e = equeue_alloc (q , sizeof (struct ecallback ));
309304 if (!e ) {
310305 return 0 ;
311306 }
312307
313308 e -> cb = cb ;
314309 e -> data = data ;
315- return event_post (q , ecallback_dispatch , e );
310+ return equeue_post (q , ecallback_dispatch , e );
316311}
317312
318- int event_call_in (equeue_t * q , int ms , void (* cb )(void * ), void * data ) {
319- struct ecallback * e = event_alloc (q , sizeof (struct ecallback ));
313+ int equeue_call_in (equeue_t * q , int ms , void (* cb )(void * ), void * data ) {
314+ struct ecallback * e = equeue_alloc (q , sizeof (struct ecallback ));
320315 if (!e ) {
321316 return 0 ;
322317 }
323318
324319 event_delay (e , ms );
325320 e -> cb = cb ;
326321 e -> data = data ;
327- return event_post (q , ecallback_dispatch , e );
322+ return equeue_post (q , ecallback_dispatch , e );
328323}
329324
330- int event_call_every (equeue_t * q , int ms , void (* cb )(void * ), void * data ) {
331- struct ecallback * e = event_alloc (q , sizeof (struct ecallback ));
325+ int equeue_call_every (equeue_t * q , int ms , void (* cb )(void * ), void * data ) {
326+ struct ecallback * e = equeue_alloc (q , sizeof (struct ecallback ));
332327 if (!e ) {
333328 return 0 ;
334329 }
@@ -337,5 +332,5 @@ int event_call_every(equeue_t *q, int ms, void (*cb)(void*), void *data) {
337332 event_period (e , ms );
338333 e -> cb = cb ;
339334 e -> data = data ;
340- return event_post (q , ecallback_dispatch , e );
335+ return equeue_post (q , ecallback_dispatch , e );
341336}
0 commit comments