From c27b7c103a7d0e8a6ca02b5f6e42372d1ee6993e Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Sun, 27 Oct 2019 07:30:43 +0200 Subject: libcamera: controls: Add operator== and operator!= to ControlRange MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Allow comparision of control ranges by adding the required operators. Signed-off-by: Laurent Pinchart Reviewed-by: Niklas Söderlund Reviewed-by: Jacopo Mondi --- include/libcamera/controls.h | 10 ++++++++++ src/libcamera/controls.cpp | 12 ++++++++++++ 2 files changed, 22 insertions(+) diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h index 42e6df7e..f24dc764 100644 --- a/include/libcamera/controls.h +++ b/include/libcamera/controls.h @@ -112,6 +112,16 @@ public: std::string toString() const; + bool operator==(const ControlRange &other) const + { + return min_ == other.min_ && max_ == other.max_; + } + + bool operator!=(const ControlRange &other) const + { + return !(*this == other); + } + private: ControlValue min_; ControlValue max_; diff --git a/src/libcamera/controls.cpp b/src/libcamera/controls.cpp index c23c1b88..c743c13b 100644 --- a/src/libcamera/controls.cpp +++ b/src/libcamera/controls.cpp @@ -383,6 +383,18 @@ std::string ControlRange::toString() const return ss.str(); } +/** + * \fn bool ControlRange::operator==() + * \brief Compare ControlRange instances for equality + * \return True if the ranges have identical min and max, false otherwise + */ + +/** + * \fn bool ControlRange::operator!=() + * \brief Compare ControlRange instances for non equality + * \return False if the ranges have identical min and max, true otherwise + */ + /** * \typedef ControlIdMap * \brief A map of numerical control ID to ControlId -- cgit v1.2.1