2020-06-05 23:44:30 +02:00
|
|
|
#ifndef UTIL_TIME_H
|
|
|
|
#define UTIL_TIME_H
|
|
|
|
|
2023-06-05 22:45:28 +02:00
|
|
|
#include <stdint.h>
|
2020-06-05 23:50:00 +02:00
|
|
|
#include <time.h>
|
|
|
|
|
2020-06-05 23:44:30 +02:00
|
|
|
/**
|
|
|
|
* Get the current time, in milliseconds.
|
|
|
|
*/
|
2022-11-23 15:56:37 +01:00
|
|
|
int64_t get_current_time_msec(void);
|
2020-06-05 23:44:30 +02:00
|
|
|
|
2020-06-05 23:50:00 +02:00
|
|
|
/**
|
|
|
|
* Convert a timespec to milliseconds.
|
|
|
|
*/
|
|
|
|
int64_t timespec_to_msec(const struct timespec *a);
|
|
|
|
|
2023-06-05 17:26:50 +02:00
|
|
|
/**
|
|
|
|
* Convert a timespec to nanoseconds.
|
|
|
|
*/
|
|
|
|
int64_t timespec_to_nsec(const struct timespec *a);
|
|
|
|
|
2020-12-13 12:53:43 +01:00
|
|
|
/**
|
|
|
|
* Convert nanoseconds to a timespec.
|
|
|
|
*/
|
|
|
|
void timespec_from_nsec(struct timespec *r, int64_t nsec);
|
|
|
|
|
2020-06-05 23:56:13 +02:00
|
|
|
/**
|
|
|
|
* Subtracts timespec `b` from timespec `a`, and stores the difference in `r`.
|
|
|
|
*/
|
|
|
|
void timespec_sub(struct timespec *r, const struct timespec *a,
|
|
|
|
const struct timespec *b);
|
|
|
|
|
2020-06-05 23:44:30 +02:00
|
|
|
#endif
|