[libcamera-devel,v2,01/14] libcamera: pipeline: rkisp1: Avoid copy assignment of V4L2 control map

Message ID 20191012184407.31684-2-laurent.pinchart@ideasonboard.com
State Accepted
Headers show
Series
  • Use ControlList for both libcamera and V4L2 controls
Related show

Commit Message

Laurent Pinchart Oct. 12, 2019, 6:43 p.m. UTC
Use the std::map::emplace() method to avoid unnecessary creation of an
empty V4L2ControlInfoMap folled by a copy assignment.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 src/libcamera/pipeline/rkisp1/rkisp1.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Niklas Söderlund Oct. 13, 2019, 3:18 p.m. UTC | #1
Hi Laurent,

Thanks for your work.

On 2019-10-12 21:43:54 +0300, Laurent Pinchart wrote:
> Use the std::map::emplace() method to avoid unnecessary creation of an
> empty V4L2ControlInfoMap folled by a copy assignment.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

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

> ---
>  src/libcamera/pipeline/rkisp1/rkisp1.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> index 029d5868d11f..32b023730009 100644
> --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
> @@ -777,7 +777,7 @@ int PipelineHandlerRkISP1::start(Camera *camera)
>  	};
>  
>  	std::map<unsigned int, V4L2ControlInfoMap> entityControls;
> -	entityControls[0] = data->sensor_->controls();
> +	entityControls.emplace(0, data->sensor_->controls());
>  
>  	data->ipa_->configure(streamConfig, entityControls);
>  
> -- 
> Regards,
> 
> Laurent Pinchart
> 
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel@lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel

Patch

diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index 029d5868d11f..32b023730009 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -777,7 +777,7 @@  int PipelineHandlerRkISP1::start(Camera *camera)
 	};
 
 	std::map<unsigned int, V4L2ControlInfoMap> entityControls;
-	entityControls[0] = data->sensor_->controls();
+	entityControls.emplace(0, data->sensor_->controls());
 
 	data->ipa_->configure(streamConfig, entityControls);