X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=src%2Fevent.h;h=6b53d9192797d500781fb319233e561394556242;hb=6346e3f4a100f958d5aaeffd867b10ed7cd0cd92;hp=ce6701ac441491cce83fe2f67717fb8d9c8097a7;hpb=ce76e2051ce668ff4623263215bf4b38cfca46ca;p=meshlink diff --git a/src/event.h b/src/event.h index ce6701ac..6b53d919 100644 --- a/src/event.h +++ b/src/event.h @@ -28,6 +28,7 @@ #define IO_WRITE 2 typedef struct event_loop_t event_loop_t; +struct meshlink_handle; typedef void (*io_cb_t)(event_loop_t *loop, void *data, int flags); typedef void (*timeout_cb_t)(event_loop_t *loop, void *data); @@ -52,7 +53,9 @@ typedef struct timeout_t { typedef struct signal_t { struct splay_node_t node; int signum; +#ifdef HAVE_STDATOMIC_H volatile atomic_flag set; +#endif signal_cb_t cb; void *data; } signal_t; @@ -94,7 +97,7 @@ void idle_set(event_loop_t *loop, idle_cb_t cb, void *data); void event_loop_init(event_loop_t *loop); void event_loop_exit(event_loop_t *loop); -bool event_loop_run(event_loop_t *loop, pthread_mutex_t *mutex) __attribute__((__warn_unused_result__)); +bool event_loop_run(event_loop_t *loop, struct meshlink_handle *mesh) __attribute__((__warn_unused_result__)); void event_loop_flush_output(event_loop_t *loop); void event_loop_start(event_loop_t *loop); void event_loop_stop(event_loop_t *loop);