1
0
mirror of https://github.com/pumpitupdev/pumptools.git synced 2025-02-20 04:01:00 +01:00

util/time: Add functions to measure time

This commit is contained in:
icex2 2021-01-23 23:19:48 +01:00
parent 52ae247f00
commit 1e32a1f6c0
2 changed files with 39 additions and 0 deletions

View File

@ -66,4 +66,33 @@ void util_time_get_current_time(struct util_time_timestamp* timestamp)
timestamp->month = tm->tm_mon + 1;
// Years since 1900
timestamp->year = tm->tm_year + 1900;
}
uint64_t util_time_now_ns()
{
struct timespec ts;
clock_gettime(0, &ts);
return ts.tv_sec * 1000000000 + ts.tv_nsec;
}
uint64_t util_time_delta_ns(uint64_t prev_ns, uint64_t now_ns)
{
return now_ns - prev_ns;
}
double util_time_delta_us(uint64_t prev_ns, uint64_t now_ns)
{
return util_time_delta_ns(prev_ns, now_ns) / 1000.0;
}
double util_time_delta_ms(uint64_t prev_ns, uint64_t now_ns)
{
return util_time_delta_ns(prev_ns, now_ns) / 1000.0 / 1000.0;
}
double util_time_delta_sec(uint64_t prev_ns, uint64_t now_ns)
{
return util_time_delta_ns(prev_ns, now_ns) / 1000.0 / 1000.0 / 1000.0;
}

View File

@ -23,4 +23,14 @@ void util_time_sleep_sec(uint64_t time_sec);
void util_time_get_current_time(struct util_time_timestamp* timestamp);
uint64_t util_time_now_ns();
uint64_t util_time_delta_ns();
double util_time_delta_us(uint64_t prev_ns, uint64_t now_ns);
double util_time_delta_ms(uint64_t prev_ns, uint64_t now_ns);
double util_time_delta_sec(uint64_t prev_ns, uint64_t now_ns);
#endif //UTIL_TIME_H