X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FInterfaces%2FUDI%2Fudi_lib%2Fcore%2Ftime.c;fp=KernelLand%2FModules%2FInterfaces%2FUDI%2Fudi_lib%2Fcore%2Ftime.c;h=3d82c14e0e0d893cb91c9da07af5794bb24db7ed;hb=fb13a50bc14688a20dc37acbbbbe23f56bf63c41;hp=0000000000000000000000000000000000000000;hpb=e7b8e2df61ce667f42043d746c148b06b5a4820a;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/Interfaces/UDI/udi_lib/core/time.c b/KernelLand/Modules/Interfaces/UDI/udi_lib/core/time.c new file mode 100644 index 00000000..3d82c14e --- /dev/null +++ b/KernelLand/Modules/Interfaces/UDI/udi_lib/core/time.c @@ -0,0 +1,45 @@ +/** + * \file time.c + * \author John Hodge (thePowersGang) + */ +#include +#include + +// === EXPORTS === +EXPORT(udi_timer_start); +EXPORT(udi_timer_start_repeating); +EXPORT(udi_timer_cancel); +EXPORT(udi_time_current); +EXPORT(udi_time_between); +EXPORT(udi_time_since); + +// === CODE === +void udi_timer_start(udi_timer_expired_call_t *callback, udi_cb_t *gcb, udi_time_t interval) +{ + UNIMPLEMENTED(); +} +void udi_timer_start_repeating(udi_timer_tick_call_t *callback, udi_cb_t *gcb, udi_time_t interval) +{ + UNIMPLEMENTED(); +} +void udi_timer_cancel(udi_cb_t *gcb) +{ + UNIMPLEMENTED(); +} + +udi_timestamp_t udi_time_current(void) +{ + return now(); +} +udi_time_t udi_time_between(udi_timestamp_t start_time, udi_timestamp_t end_time) +{ + udi_time_t ret; + tTime delta = end_time - start_time; + ret.seconds = delta / 1000; + ret.nanoseconds = (delta % 1000) * 1000 * 1000; + return ret; +} +udi_time_t udi_time_since(udi_timestamp_t start_time) +{ + return udi_time_between(start_time, udi_time_current()); +}