[libcamera-devel] [PATCH v4 01/13] libcamera: v4l2_controls: Add min and max to V4L2ControlInfo

Niklas Söderlund niklas.soderlund at ragnatech.se
Tue Jul 2 01:38:10 CEST 2019


Hi Laurent,

Thanks for your work.

On 2019-07-01 23:14:52 +0300, Laurent Pinchart wrote:
> Add min() and max() methods to V4L2ControlInfo to report the control's
> minimum and maximum value respectively.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>

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

> ---
>  src/libcamera/include/v4l2_controls.h |  6 ++++++
>  src/libcamera/v4l2_controls.cpp       | 14 ++++++++++++++
>  2 files changed, 20 insertions(+)
> 
> diff --git a/src/libcamera/include/v4l2_controls.h b/src/libcamera/include/v4l2_controls.h
> index 2c8cb9003f25..0047efab11fa 100644
> --- a/src/libcamera/include/v4l2_controls.h
> +++ b/src/libcamera/include/v4l2_controls.h
> @@ -28,11 +28,17 @@ public:
>  	size_t size() const { return size_; }
>  	const std::string &name() const { return name_; }
>  
> +	int64_t min() const { return min_; }
> +	int64_t max() const { return max_; }
> +
>  private:
>  	unsigned int id_;
>  	unsigned int type_;
>  	size_t size_;
>  	std::string name_;
> +
> +	int64_t min_;
> +	int64_t max_;
>  };
>  
>  class V4L2Control
> diff --git a/src/libcamera/v4l2_controls.cpp b/src/libcamera/v4l2_controls.cpp
> index 78888de29642..af017bce48ba 100644
> --- a/src/libcamera/v4l2_controls.cpp
> +++ b/src/libcamera/v4l2_controls.cpp
> @@ -74,6 +74,8 @@ V4L2ControlInfo::V4L2ControlInfo(const struct v4l2_query_ext_ctrl &ctrl)
>  	type_ = ctrl.type;
>  	name_ = static_cast<const char *>(ctrl.name);
>  	size_ = ctrl.elem_size * ctrl.elems;
> +	min_ = ctrl.minimum;
> +	max_ = ctrl.maximum;
>  }
>  
>  /**
> @@ -100,6 +102,18 @@ V4L2ControlInfo::V4L2ControlInfo(const struct v4l2_query_ext_ctrl &ctrl)
>   * \return The V4L2 control user readable name
>   */
>  
> +/**
> + * \fn V4L2ControlInfo::min()
> + * \brief Retrieve the control minimum value
> + * \return The V4L2 control minimum value
> + */
> +
> +/**
> + * \fn V4L2ControlInfo::max()
> + * \brief Retrieve the control maximum value
> + * \return The V4L2 control maximum value
> + */
> +
>  /**
>   * \class V4L2Control
>   * \brief A V4L2 control value
> -- 
> Regards,
> 
> Laurent Pinchart
> 
> _______________________________________________
> 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