[libcamera-devel] [PATCH v5 18/33] ipa: Disable copy-construction of IPAContext

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Sep 27 04:36:27 CEST 2022


The IPAContext is not meant to be copied. Prevent unintentional
pass-by-value by disabling its copy constructor.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 src/ipa/ipu3/ipa_context.h   | 4 ++++
 src/ipa/rkisp1/ipa_context.h | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/src/ipa/ipu3/ipa_context.h b/src/ipa/ipu3/ipa_context.h
index bdba3d07d13a..9766330f2f39 100644
--- a/src/ipa/ipu3/ipa_context.h
+++ b/src/ipa/ipu3/ipa_context.h
@@ -10,6 +10,7 @@
 
 #include <linux/intel-ipu3.h>
 
+#include <libcamera/base/class.h>
 #include <libcamera/base/utils.h>
 
 #include <libcamera/geometry.h>
@@ -87,6 +88,9 @@ struct IPAContext {
 	IPAActiveState activeState;
 
 	FCQueue<IPAFrameContext, kMaxFrameContexts> frameContexts;
+
+private:
+	LIBCAMERA_DISABLE_COPY(IPAContext)
 };
 
 } /* namespace ipa::ipu3 */
diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h
index 4481bd2acde6..9a84b7adda45 100644
--- a/src/ipa/rkisp1/ipa_context.h
+++ b/src/ipa/rkisp1/ipa_context.h
@@ -10,6 +10,7 @@
 
 #include <linux/rkisp1-config.h>
 
+#include <libcamera/base/class.h>
 #include <libcamera/base/utils.h>
 
 #include <libcamera/geometry.h>
@@ -101,6 +102,9 @@ struct IPAContext {
 	IPAActiveState activeState;
 
 	FCQueue<IPAFrameContext, kMaxFrameContexts> frameContexts;
+
+private:
+	LIBCAMERA_DISABLE_COPY(IPAContext)
 };
 
 } /* namespace ipa::rkisp1 */
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list