X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-core%2Ftimeeventq.h;h=a695b6aaf3c0a892b9e233ac0ff27bb871f6d998;hb=9c0f9c65093cfa53d45f9b68782321eb8063a032;hp=a2544ff2cbe14525badb82ea12c46136272891f7;hpb=774b0629a3536eda0b560e092964cf94d6b742aa;p=catta diff --git a/avahi-core/timeeventq.h b/avahi-core/timeeventq.h index a2544ff..a695b6a 100644 --- a/avahi-core/timeeventq.h +++ b/avahi-core/timeeventq.h @@ -1,57 +1,46 @@ #ifndef footimeeventqhfoo #define footimeeventqhfoo -/* $Id$ */ - /*** This file is part of avahi. - + avahi is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. - + avahi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - + You should have received a copy of the GNU Lesser General Public License along with avahi; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ***/ +#include + typedef struct AvahiTimeEventQueue AvahiTimeEventQueue; typedef struct AvahiTimeEvent AvahiTimeEvent; -#include "prioq.h" - -typedef void (*AvahiTimeEventCallback)(AvahiTimeEvent *e, gpointer userdata); +#include -struct AvahiTimeEvent { - AvahiTimeEventQueue *queue; - AvahiPrioQueueNode *node; - GTimeVal expiry; - GTimeVal last_run; - AvahiTimeEventCallback callback; - gpointer 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, AvahiTimeEventCallback callback, gpointer userdata); -void avahi_time_event_queue_remove(AvahiTimeEventQueue *q, AvahiTimeEvent *e); - -void avahi_time_event_queue_update(AvahiTimeEventQueue *q, AvahiTimeEvent *e, const GTimeVal *timeval); +AvahiTimeEvent* avahi_time_event_new( + AvahiTimeEventQueue *q, + const struct timeval *timeval, + AvahiTimeEventCallback callback, + void* userdata); -AvahiTimeEvent* avahi_time_event_queue_root(AvahiTimeEventQueue *q); -AvahiTimeEvent* avahi_time_event_next(AvahiTimeEvent *e); +void avahi_time_event_free(AvahiTimeEvent *e); +void avahi_time_event_update(AvahiTimeEvent *e, const struct timeval *timeval); #endif