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

Kieran Bingham kieran.bingham at ideasonboard.com
Mon Aug 16 14:11:44 CEST 2021


Hi Laurent,

On 12/08/2021 00:26, Laurent Pinchart wrote:
> 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>

Reviewed-by: Kieran Bingham <kieran.bingham 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
> 


More information about the libcamera-devel mailing list