From 3d297f7ac840c3abe8e72d525f0fbc1fe607f94d Mon Sep 17 00:00:00 2001 From: Kieran Bingham Date: Tue, 10 Aug 2021 16:52:15 +0100 Subject: libcamera: controls: Use a const ControlValidator The ControlValidator passed to a ControlList constructor is used, but not modified. Make it const. Reviewed-by: Laurent Pinchart Signed-off-by: Kieran Bingham --- include/libcamera/controls.h | 6 +++--- src/libcamera/controls.cpp | 6 ++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/libcamera/controls.h b/include/libcamera/controls.h index 6668e4bb..b3590fdb 100644 --- a/include/libcamera/controls.h +++ b/include/libcamera/controls.h @@ -353,8 +353,8 @@ private: public: ControlList(); - ControlList(const ControlIdMap &idmap, ControlValidator *validator = nullptr); - ControlList(const ControlInfoMap &infoMap, ControlValidator *validator = nullptr); + ControlList(const ControlIdMap &idmap, const ControlValidator *validator = nullptr); + ControlList(const ControlInfoMap &infoMap, const ControlValidator *validator = nullptr); using iterator = ControlListMap::iterator; using const_iterator = ControlListMap::const_iterator; @@ -412,7 +412,7 @@ private: const ControlValue *find(unsigned int id) const; ControlValue *find(unsigned int id); - ControlValidator *validator_; + const ControlValidator *validator_; const ControlIdMap *idmap_; const ControlInfoMap *infoMap_; diff --git a/src/libcamera/controls.cpp b/src/libcamera/controls.cpp index 5c05ba4a..55eec71f 100644 --- a/src/libcamera/controls.cpp +++ b/src/libcamera/controls.cpp @@ -821,7 +821,8 @@ ControlList::ControlList() * controls is provided by controls::controls and can be used as the \a idmap * argument. */ -ControlList::ControlList(const ControlIdMap &idmap, ControlValidator *validator) +ControlList::ControlList(const ControlIdMap &idmap, + const ControlValidator *validator) : validator_(validator), idmap_(&idmap), infoMap_(nullptr) { } @@ -831,7 +832,8 @@ ControlList::ControlList(const ControlIdMap &idmap, ControlValidator *validator) * \param[in] infoMap The ControlInfoMap for the control list target object * \param[in] validator The validator (may be null) */ -ControlList::ControlList(const ControlInfoMap &infoMap, ControlValidator *validator) +ControlList::ControlList(const ControlInfoMap &infoMap, + const ControlValidator *validator) : validator_(validator), idmap_(&infoMap.idmap()), infoMap_(&infoMap) { } -- cgit v1.2.1