summaryrefslogtreecommitdiff
path: root/src/libcamera/include/utils.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcamera/include/utils.h')
-rw-r--r--src/libcamera/include/utils.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libcamera/include/utils.h b/src/libcamera/include/utils.h
index 97bd470a..47a42258 100644
--- a/src/libcamera/include/utils.h
+++ b/src/libcamera/include/utils.h
@@ -7,6 +7,7 @@
#ifndef __LIBCAMERA_UTILS_H__
#define __LIBCAMERA_UTILS_H__
+#include <algorithm>
#include <memory>
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
@@ -45,6 +46,13 @@ unsigned int set_overlap(InputIt1 first1, InputIt1 last1,
return count;
}
+/* C++11 doesn't provide std::clamp */
+template <typename T>
+const T& clamp(const T& v, const T& lo, const T& hi)
+{
+ return std::max(lo, std::min(v, hi));
+}
+
} /* namespace utils */
} /* namespace libcamera */