X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-core%2Ftimeeventq.h;h=5705eb9c1a533f882281367e84dde5dcb55e42f2;hb=0e203251414d56b3f6b8d4dafde19a1d27b18caf;hp=26ced90265381ffc604d00e910e97dc3df1bbcd8;hpb=c58379bde376cb2298fca14f83a86626f1b76f2f;p=catta diff --git a/avahi-core/timeeventq.h b/avahi-core/timeeventq.h index 26ced90..5705eb9 100644 --- a/avahi-core/timeeventq.h +++ b/avahi-core/timeeventq.h @@ -22,36 +22,30 @@ USA. ***/ -typedef struct _AvahiTimeEventQueue AvahiTimeEventQueue; -typedef struct _AvahiTimeEvent AvahiTimeEvent; +#include -#include "prioq.h" +typedef struct AvahiTimeEventQueue AvahiTimeEventQueue; +typedef struct AvahiTimeEvent AvahiTimeEvent; + +#include -struct _AvahiTimeEvent { - AvahiTimeEventQueue *queue; - AvahiPrioQueueNode *node; - GTimeVal expiry; - void (*callback)(AvahiTimeEvent *e, void *userdata); - void *userdata; -}; +#include "prioq.h" -struct _AvahiTimeEventQueue { - GSource source; - AvahiPrioQueue *prioq; -}; +typedef void (*AvahiTimeEventCallback)(AvahiTimeEvent *e, void* userdata); -AvahiTimeEventQueue* avahi_time_event_queue_new(GMainContext *context, gint priority); +AvahiTimeEventQueue* avahi_time_event_queue_new(const AvahiPoll *poll_api); void avahi_time_event_queue_free(AvahiTimeEventQueue *q); -AvahiTimeEvent* avahi_time_event_queue_add(AvahiTimeEventQueue *q, const GTimeVal *timeval, void (*callback)(AvahiTimeEvent *e, void *userdata), void *userdata); -void avahi_time_event_queue_remove(AvahiTimeEventQueue *q, AvahiTimeEvent *e); +AvahiTimeEvent* avahi_time_event_new( + AvahiTimeEventQueue *q, + const struct timeval *timeval, + AvahiTimeEventCallback callback, + void* userdata); -void avahi_time_event_queue_update(AvahiTimeEventQueue *q, AvahiTimeEvent *e, const GTimeVal *timeval); +void avahi_time_event_free(AvahiTimeEvent *e); +void avahi_time_event_update(AvahiTimeEvent *e, const struct timeval *timeval); AvahiTimeEvent* avahi_time_event_queue_root(AvahiTimeEventQueue *q); AvahiTimeEvent* avahi_time_event_next(AvahiTimeEvent *e); - - - #endif