34#define INTERVAL_DEBUG 0
68 const time_t local_now =
now;
94 const time_t local_now =
now;
98 dmsg(
D_INTERVAL,
"INTERVAL interval_schedule wakeup=%d", (
int)*wakeup);
111 dmsg(
D_INTERVAL,
"INTERVAL interval_future_trigger %d", (
int)wakeup);
175 et->
n = (n >= 0) ? n : 0;
208 et->
n = (n >= 0) ? n : 0;
222#define ETT_DEFAULT (-1)
static void interval_future_trigger(struct interval *top, interval_t wakeup)
static void event_timeout_reset(struct event_timeout *et)
Resets a timer.
static void interval_action(struct interval *top)
static bool event_timeout_defined(const struct event_timeout *et)
static void event_timeout_init(struct event_timeout *et, interval_t n, const time_t last)
Initialises a timer struct.
static void event_timeout_clear(struct event_timeout *et)
Clears the timeout and reset all values to 0.
static void interval_schedule_wakeup(struct interval *top, interval_t *wakeup)
void interval_init(struct interval *top, int horizon, int refresh)
static void event_timeout_modify_wakeup(struct event_timeout *et, interval_t n)
Sets the interval n of a timeout.
static bool interval_test(struct interval *top)
bool event_timeout_trigger(struct event_timeout *et, struct timeval *tv, int et_const_retry)
This is the principal function for testing and triggering recurring timers.
static interval_t event_timeout_remaining(struct event_timeout *et)
Returns the time until the timeout should triggered, from now.
static void interval_earliest_wakeup(interval_t *wakeup, time_t at, time_t current)
interval_t n
periodic interval for periodic timeouts
bool defined
This timeout is active.
time_t last
time of last event