File: timer.h

package info (click to toggle)
ulogd2 2.0.9-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,932 kB
  • sloc: ansic: 13,019; sh: 4,674; sql: 2,302; makefile: 197; perl: 90
file content (26 lines) | stat: -rw-r--r-- 710 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef _TIMER_H_
#define _TIMER_H_

#include <ulogd/linux_rbtree.h>
#include <ulogd/linuxlist.h>

#include <sys/time.h>

struct ulogd_timer {
	struct rb_node		node;
	struct llist_head	list;
	struct timeval		tv;
	void			*data;
	void			(*cb)(struct ulogd_timer *a, void *data);
};

void ulogd_init_timer(struct ulogd_timer *t,
		     void *data,
		     void (*cb)(struct ulogd_timer *a, void *data));
void ulogd_add_timer(struct ulogd_timer *alarm, unsigned long sc);
void ulogd_del_timer(struct ulogd_timer *alarm);
int ulogd_timer_pending(struct ulogd_timer *alarm);
struct timeval *ulogd_get_next_timer_run(struct timeval *next_timer);
struct timeval *ulogd_do_timer_run(struct timeval *next_timer);

#endif