@@ -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