Modules/UDI - Moved UDI headers to /UDI/include
[tpg/acess2.git] / UDI / include / udi / time.h
1
2 #ifndef _UDI_TIME_H_
3 #define _UDI_TIME_H_
4
5 typedef struct {
6         udi_ubit32_t    seconds;
7         udi_ubit32_t    nanoseconds;
8 } udi_time_t;
9
10 typedef void udi_timer_expired_call_t(udi_cb_t *gcb);
11 typedef void udi_timer_tick_call_t(udi_cb_t *gcb, udi_ubit32_t missed);
12
13 extern void udi_timer_start(udi_timer_expired_call_t *callback, udi_cb_t *gcb, udi_time_t interval);
14 extern void udi_timer_start_repeating(udi_timer_tick_call_t *callback, udi_cb_t *gcb, udi_time_t interval);
15 extern void udi_timer_cancel(udi_cb_t *gcb);
16
17 extern udi_timestamp_t  udi_time_current(void);
18 extern udi_time_t       udi_time_between(udi_timestamp_t start_time, udi_timestamp_t end_time);
19 extern udi_time_t       udi_time_since(udi_timestamp_t start_time);
20
21 #endif
22

UCC git Repository :: git.ucc.asn.au