[libcamera-devel,1/4] libcamera: camera: Allow unspecified roles for generateConfiguration

Message ID 20200629163916.1815321-2-kieran.bingham@ideasonboard.com
State Accepted
Headers show
Series
  • Android HAL multi-stream support
Related show

Commit Message

Kieran Bingham June 29, 2020, 4:39 p.m. UTC
Providing an empty set of roles is permitted to generate an empty
configuration from the pipeline handlers.

Overload the generateConfiguration() function such that not specifying a
roles parameter will use an empty set, and return an empty
configuration.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
---
 include/libcamera/camera.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Laurent Pinchart June 29, 2020, 8:14 p.m. UTC | #1
Hi Kieran,

Thank you for the patch.

On Mon, Jun 29, 2020 at 05:39:13PM +0100, Kieran Bingham wrote:
> Providing an empty set of roles is permitted to generate an empty
> configuration from the pipeline handlers.
> 
> Overload the generateConfiguration() function such that not specifying a
> roles parameter will use an empty set, and return an empty
> configuration.
> 
> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

Makes it a tiny bit easier.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> ---
>  include/libcamera/camera.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
> index 9c0e58f7864b..4d1a4a9f52ec 100644
> --- a/include/libcamera/camera.h
> +++ b/include/libcamera/camera.h
> @@ -89,7 +89,7 @@ public:
>  	const ControlList &properties();
>  
>  	const std::set<Stream *> &streams() const;
> -	std::unique_ptr<CameraConfiguration> generateConfiguration(const StreamRoles &roles);
> +	std::unique_ptr<CameraConfiguration> generateConfiguration(const StreamRoles &roles = {});
>  	int configure(CameraConfiguration *config);
>  
>  	Request *createRequest(uint64_t cookie = 0);

Patch

diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h
index 9c0e58f7864b..4d1a4a9f52ec 100644
--- a/include/libcamera/camera.h
+++ b/include/libcamera/camera.h
@@ -89,7 +89,7 @@  public:
 	const ControlList &properties();
 
 	const std::set<Stream *> &streams() const;
-	std::unique_ptr<CameraConfiguration> generateConfiguration(const StreamRoles &roles);
+	std::unique_ptr<CameraConfiguration> generateConfiguration(const StreamRoles &roles = {});
 	int configure(CameraConfiguration *config);
 
 	Request *createRequest(uint64_t cookie = 0);