[libcamera-devel] [PATCH v3 13/14] libcamera: pipeline_handler: Drop controls() and properties() functions

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Aug 12 01:26:24 CEST 2021


The PipelineHandler controls() and properties() functions are only used
by the Camera class. Now that the controls and properties are stored in
the Camera::Private class, we can drop those functions and access the
private data directly in Camera::controls() and Camera::properties().

Suggested-by: Jacopo Mondi <jacopo at jmondi.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 include/libcamera/internal/pipeline_handler.h |  3 ---
 src/libcamera/camera.cpp                      |  4 ++--
 src/libcamera/pipeline_handler.cpp            | 21 -------------------
 3 files changed, 2 insertions(+), 26 deletions(-)

diff --git a/include/libcamera/internal/pipeline_handler.h b/include/libcamera/internal/pipeline_handler.h
index 1e48f7076d18..41cba44d990f 100644
--- a/include/libcamera/internal/pipeline_handler.h
+++ b/include/libcamera/internal/pipeline_handler.h
@@ -46,9 +46,6 @@ public:
 	bool lock();
 	void unlock();
 
-	const ControlInfoMap &controls(const Camera *camera) const;
-	const ControlList &properties(const Camera *camera) const;
-
 	virtual CameraConfiguration *generateConfiguration(Camera *camera,
 		const StreamRoles &roles) = 0;
 	virtual int configure(Camera *camera, CameraConfiguration *config) = 0;
diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
index a22cc7b8e49d..c20e05014fb9 100644
--- a/src/libcamera/camera.cpp
+++ b/src/libcamera/camera.cpp
@@ -800,7 +800,7 @@ int Camera::release()
  */
 const ControlInfoMap &Camera::controls() const
 {
-	return _d()->pipe_->controls(this);
+	return _d()->controlInfo_;
 }
 
 /**
@@ -813,7 +813,7 @@ const ControlInfoMap &Camera::controls() const
  */
 const ControlList &Camera::properties() const
 {
-	return _d()->pipe_->properties(this);
+	return _d()->properties_;
 }
 
 /**
diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp
index 62d29cbeff02..597d4c6a578a 100644
--- a/src/libcamera/pipeline_handler.cpp
+++ b/src/libcamera/pipeline_handler.cpp
@@ -176,27 +176,6 @@ void PipelineHandler::unlock()
 		media->unlock();
 }
 
-/**
- * \brief Retrieve the list of controls for a camera
- * \param[in] camera The camera
- * \context This function is \threadsafe.
- * \return A ControlInfoMap listing the controls support by \a camera
- */
-const ControlInfoMap &PipelineHandler::controls(const Camera *camera) const
-{
-	return camera->_d()->controlInfo_;
-}
-
-/**
- * \brief Retrieve the list of properties for a camera
- * \param[in] camera The camera
- * \return A ControlList of properties supported by \a camera
- */
-const ControlList &PipelineHandler::properties(const Camera *camera) const
-{
-	return camera->_d()->properties_;
-}
-
 /**
  * \fn PipelineHandler::generateConfiguration()
  * \brief Generate a camera configuration for a specified camera
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list