[libcamera-devel] [PATCH v5 8/9] libcamera: camera: Add Camera properties
Jacopo Mondi
jacopo at jmondi.org
Thu Feb 6 02:26:00 CET 2020
Add a method to the Camera class to retrieve the Camera properties
registered by the pipeline handler.
While at it, reword the Camera::controls() operation documentation to
specify that the camera control information are constant during the
camera lifetime not their value, while the camera properties value are
the actually static information.
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
Signed-off-by: Jacopo Mondi <jacopo at jmondi.org>
---
include/libcamera/camera.h | 1 +
src/libcamera/camera.cpp | 16 +++++++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index c37319eda2dc..c453b95228a7 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -86,6 +86,7 @@ public:
int release();
const ControlInfoMap &controls();
+ const ControlList &properties();
const std::set<Stream *> &streams() const;
std::unique_ptr<CameraConfiguration> generateConfiguration(const StreamRoles &roles);
diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp
index 802e7fd0d12f..ca09e297d32a 100644
--- a/src/libcamera/camera.cpp
+++ b/src/libcamera/camera.cpp
@@ -627,7 +627,8 @@ int Camera::release()
/**
* \brief Retrieve the list of controls supported by the camera
*
- * Camera controls remain constant through the lifetime of the camera.
+ * The list of controls supported by the camera and their associated
+ * constraints remain constant through the lifetime of the Camera object.
*
* \return A ControlInfoMap listing the controls supported by the camera
*/
@@ -636,6 +637,19 @@ const ControlInfoMap &Camera::controls()
return p_->pipe_->controls(this);
}
+/**
+ * \brief Retrieve the list of properties of the camera
+ *
+ * Camera properties are static information that describe the capabilities of
+ * the camera. They remain constant through the lifetime of the Camera object.
+ *
+ * \return A ControlList of properties supported by the camera
+ */
+const ControlList &Camera::properties()
+{
+ return p_->pipe_->properties(this);
+}
+
/**
* \brief Retrieve all the camera's stream information
*
--
2.24.1
More information about the libcamera-devel
mailing list