[libcamera-devel] [RFC 1/7] libcamera: camera_configuration: Return config index

Niklas Söderlund niklas.soderlund at ragnatech.se
Fri Sep 4 08:11:07 CEST 2020


Hi Jacopo,

Thanks for your work.

On 2020-09-02 15:08:40 +0200, Jacopo Mondi wrote:
> When adding a new StreamConfiguration to a CameraConfiguration instance
> it might be useful to know how what is the index of the newly added item
> to be able to retrieve it later.
> 
> Return the index of the newly inserted item, which corresponds to the
> 0-indexed number of items in the CameraConfiguration::config_ vector,
> from CameraConfiguration::addConfiguration().
> 
> Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>

Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>

> ---
>  include/libcamera/camera.h | 2 +-
>  src/libcamera/camera.cpp   | 5 ++++-
>  2 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
> index 272c12c3c473..53c32afa23a5 100644
> --- a/include/libcamera/camera.h
> +++ b/include/libcamera/camera.h
> @@ -39,7 +39,7 @@ public:
>  
>  	virtual ~CameraConfiguration();
>  
> -	void addConfiguration(const StreamConfiguration &cfg);
> +	int addConfiguration(const StreamConfiguration &cfg);
>  	virtual Status validate() = 0;
>  
>  	StreamConfiguration &at(unsigned int index);
> diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
> index 4a9c19c33cfb..9a8923620e24 100644
> --- a/src/libcamera/camera.cpp
> +++ b/src/libcamera/camera.cpp
> @@ -104,10 +104,13 @@ CameraConfiguration::~CameraConfiguration()
>  /**
>   * \brief Add a stream configuration to the camera configuration
>   * \param[in] cfg The stream configuration
> + * \return The index of the newly added stream configuration
>   */
> -void CameraConfiguration::addConfiguration(const StreamConfiguration &cfg)
> +int CameraConfiguration::addConfiguration(const StreamConfiguration &cfg)
>  {
>  	config_.push_back(cfg);
> +
> +	return config_.size() - 1;
>  }
>  
>  /**
> -- 
> 2.28.0
> 
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel at lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel

-- 
Regards,
Niklas Söderlund


More information about the libcamera-devel mailing list