util/time: add timespec_from_nsec

master
Simon Ser 4 years ago
parent 94fda895ac
commit f0c1b32120

@ -13,6 +13,11 @@ uint32_t get_current_time_msec(void);
*/ */
int64_t timespec_to_msec(const struct timespec *a); int64_t timespec_to_msec(const struct timespec *a);
/**
* Convert nanoseconds to a timespec.
*/
void timespec_from_nsec(struct timespec *r, int64_t nsec);
/** /**
* Subtracts timespec `b` from timespec `a`, and stores the difference in `r`. * Subtracts timespec `b` from timespec `a`, and stores the difference in `r`.
*/ */

@ -10,6 +10,11 @@ int64_t timespec_to_msec(const struct timespec *a) {
return (int64_t)a->tv_sec * 1000 + a->tv_nsec / 1000000; return (int64_t)a->tv_sec * 1000 + a->tv_nsec / 1000000;
} }
void timespec_from_nsec(struct timespec *r, int64_t nsec) {
r->tv_sec = nsec / NSEC_PER_SEC;
r->tv_nsec = nsec % NSEC_PER_SEC;
}
uint32_t get_current_time_msec(void) { uint32_t get_current_time_msec(void) {
struct timespec now; struct timespec now;
clock_gettime(CLOCK_MONOTONIC, &now); clock_gettime(CLOCK_MONOTONIC, &now);

Loading…
Cancel
Save