#pragma once #include "util/thread/thread.h" #include "loop.h" struct nn_timer { ev_timer timer; struct nn_event_loop *loop; bool disabled; void (*callback)(void *, struct nn_timer *); void *userdata; }; void nn_timer_init(struct nn_timer *timer, struct nn_event_loop *loop, void (*callback)(void *, struct nn_timer *), void *userdata); void nn_timer_set_repeat(struct nn_timer *timer, nn_os_tstamp repeat); void nn_timer_again(struct nn_timer *timer); void nn_timer_disable(struct nn_timer *timer); void nn_timer_enable(struct nn_timer *timer); void nn_timer_stop(struct nn_timer *timer);