libcamera: utils: Add clock helpers

In preparation for standardisation of the std::chrono::steady_clock as
the libcamera default clock, define aliases for the clock, duration and
time point, and add helper functions to convert a duration to a timespec
and a time point to a string. More helpers will be added later as
needed.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
This commit is contained in:
Laurent Pinchart
2019-09-14 03:35:12 +03:00
parent 304574420d
commit 98dff063f2
2 changed files with 60 additions and 0 deletions
+10
View File
@@ -8,7 +8,10 @@
#define __LIBCAMERA_UTILS_H__
#include <algorithm>
#include <chrono>
#include <memory>
#include <string>
#include <sys/time.h>
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
@@ -53,6 +56,13 @@ const T& clamp(const T& v, const T& lo, const T& hi)
return std::max(lo, std::min(v, hi));
}
using clock = std::chrono::steady_clock;
using duration = std::chrono::steady_clock::duration;
using time_point = std::chrono::steady_clock::time_point;
struct timespec duration_to_timespec(const duration &value);
std::string time_point_to_string(const time_point &time);
} /* namespace utils */
} /* namespace libcamera */