From patchwork Thu Aug 6 12:53:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Niklas_S=C3=B6derlund?= X-Patchwork-Id: 9248 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id C2003BD87A for ; Thu, 6 Aug 2020 12:53:44 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 981486071B; Thu, 6 Aug 2020 14:53:44 +0200 (CEST) Received: from bin-mail-out-05.binero.net (bin-mail-out-05.binero.net [195.74.38.228]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 3069960554 for ; Thu, 6 Aug 2020 14:53:42 +0200 (CEST) X-Halon-ID: da49ac4d-d7e3-11ea-92dc-005056917a89 Authorized-sender: niklas@soderlund.pp.se Received: from bismarck.berto.se (p54ac52a8.dip0.t-ipconnect.de [84.172.82.168]) by bin-vsp-out-01.atm.binero.net (Halon) with ESMTPA id da49ac4d-d7e3-11ea-92dc-005056917a89; Thu, 06 Aug 2020 14:53:41 +0200 (CEST) From: =?utf-8?q?Niklas_S=C3=B6derlund?= To: libcamera-devel@lists.libcamera.org Date: Thu, 6 Aug 2020 14:53:29 +0200 Message-Id: <20200806125330.2983325-3-niklas.soderlund@ragnatech.se> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20200806125330.2983325-1-niklas.soderlund@ragnatech.se> References: <20200806125330.2983325-1-niklas.soderlund@ragnatech.se> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 2/3] libcamera: pipeline_handler: Mark controls() and properties() as const operations X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Reading the controls and properties do not modify the pipeline's state and can be marked as const operations. Signed-off-by: Niklas Söderlund Reviewed-by: Kieran Bingham --- include/libcamera/internal/pipeline_handler.h | 4 ++-- src/libcamera/pipeline_handler.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h index d5321ef56df358d0..c4bf1cb68e09d754 100644 --- a/include/libcamera/internal/pipeline_handler.h +++ b/include/libcamera/internal/pipeline_handler.h @@ -68,8 +68,8 @@ public: bool lock(); void unlock(); - const ControlInfoMap &controls(Camera *camera); - const ControlList &properties(Camera *camera); + const ControlInfoMap &controls(const Camera *camera) const; + const ControlList &properties(const Camera *camera) const; virtual CameraConfiguration *generateConfiguration(Camera *camera, const StreamRoles &roles) = 0; diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp index bc9c1d4b09c5437d..d239135872344a20 100644 --- a/src/libcamera/pipeline_handler.cpp +++ b/src/libcamera/pipeline_handler.cpp @@ -257,7 +257,7 @@ void PipelineHandler::unlock() * \context This function is \threadsafe. * \return A ControlInfoMap listing the controls support by \a camera */ -const ControlInfoMap &PipelineHandler::controls(Camera *camera) +const ControlInfoMap &PipelineHandler::controls(const Camera *camera) const { CameraData *data = cameraData(camera); return data->controlInfo_; @@ -268,7 +268,7 @@ const ControlInfoMap &PipelineHandler::controls(Camera *camera) * \param[in] camera The camera * \return A ControlList of properties supported by \a camera */ -const ControlList &PipelineHandler::properties(Camera *camera) +const ControlList &PipelineHandler::properties(const Camera *camera) const { CameraData *data = cameraData(camera); return data->properties_;