-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtrtl_timer.h
More file actions
27 lines (20 loc) · 1019 Bytes
/
trtl_timer.h
File metadata and controls
27 lines (20 loc) · 1019 Bytes
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
27
struct turtle;
struct trtl_timer;
struct timespec;
struct trtl_timer *trtl_timer_add(const char *name, double period,
int (*timer_cb)(void *opaque, struct turtle *,
struct trtl_timer *timer),
void *opaque);
int trtl_timer_schedule(struct turtle *clock, struct trtl_timer *);
int trtl_timer_reschedule(struct turtle *turtle, struct trtl_timer *timer);
double trtl_timer_iterate(struct turtle *clock);
double trtl_timer_timeout_get(struct turtle *turtle);
int trtl_timer_invoke(struct turtle *turtle);
// Used internally convert tv structure to a double
void trtl_timer_double_to_timespec(double in, struct timespec *tv);
int trtl_timer_timespec_before(struct timespec *a, struct timespec *b);
void trtl_timer_add_timespecs(struct timespec *a, const struct timespec *b);
void trtl_timer_timespec_difference(struct timespec *out, const struct timespec *a,
const struct timespec *b);
double trtl_timer_timespec_to_double(struct timespec *in);
int trtl_timer_print(struct turtle *turtle);