Annotation of embedaddon/bird/lib/event.h, revision 1.1
1.1 ! misho 1: /*
! 2: * BIRD Library -- Event Processing
! 3: *
! 4: * (c) 1999 Martin Mares <mj@ucw.cz>
! 5: *
! 6: * Can be freely distributed and used under the terms of the GNU GPL.
! 7: */
! 8:
! 9: #ifndef _BIRD_EVENT_H_
! 10: #define _BIRD_EVENT_H_
! 11:
! 12: #include "lib/resource.h"
! 13:
! 14: typedef struct event {
! 15: resource r;
! 16: void (*hook)(void *);
! 17: void *data;
! 18: node n; /* Internal link */
! 19: } event;
! 20:
! 21: typedef list event_list;
! 22:
! 23: extern event_list global_event_list;
! 24:
! 25: event *ev_new(pool *);
! 26: void ev_run(event *);
! 27: #define ev_init_list(el) init_list(el)
! 28: void ev_enqueue(event_list *, event *);
! 29: void ev_schedule(event *);
! 30: void ev_postpone(event *);
! 31: int ev_run_list(event_list *);
! 32:
! 33: static inline int
! 34: ev_active(event *e)
! 35: {
! 36: return e->n.next != NULL;
! 37: }
! 38:
! 39:
! 40: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>