libcamera: camera: Provide a list of ControlInfo

Extend the Camera class to expose the controls it supports. Each
pipeline should generate a list of controls supported by each camera it
creates. These are represented by a ControlInfoMap, and an associated
ControlList of default values.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
This commit is contained in:
Kieran Bingham
2019-07-02 16:59:28 +03:00
committed by Laurent Pinchart
parent 20d5640ca4
commit b9bf9514eb
6 changed files with 45 additions and 0 deletions
+12
View File
@@ -548,6 +548,18 @@ int Camera::release()
return 0;
}
/**
* \brief Retrieve the list of controls supported by the camera
*
* Camera controls remain constant through the lifetime of the camera.
*
* \return A ControlInfoMap listing the controls supported by the camera
*/
const ControlInfoMap &Camera::controls()
{
return pipe_->controls(this);
}
/**
* \brief Retrieve all the camera's stream information
*