[PATCH v3 2/4] ipa: ipu3: Add constructor to the IPA context

Milan Zamazal mzamazal at redhat.com
Fri Oct 11 20:27:57 CEST 2024


Let's have a constructor that takes just the non-default argument,
without the need to specify the defaults.

Signed-off-by: Milan Zamazal <mzamazal at redhat.com>
---
 src/ipa/ipu3/ipa_context.cpp | 4 ++++
 src/ipa/ipu3/ipa_context.h   | 5 +++++
 src/ipa/ipu3/ipu3.cpp        | 2 +-
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/ipa/ipu3/ipa_context.cpp b/src/ipa/ipu3/ipa_context.cpp
index 917d06541..76eeb52fe 100644
--- a/src/ipa/ipu3/ipa_context.cpp
+++ b/src/ipa/ipu3/ipa_context.cpp
@@ -39,6 +39,10 @@ namespace libcamera::ipa::ipu3 {
  * \struct IPAContext
  * \brief Global IPA context data shared between all algorithms
  *
+ * \fn IPAContext::IPAContext
+ * \brief Initialize the instance with the given number of frame contexts
+ * \param[in] frameContextSize Size of the frame context ring buffer
+ *
  * \var IPAContext::configuration
  * \brief The IPA session configuration, immutable during the session
  *
diff --git a/src/ipa/ipu3/ipa_context.h b/src/ipa/ipu3/ipa_context.h
index c85d1e34e..24f51a296 100644
--- a/src/ipa/ipu3/ipa_context.h
+++ b/src/ipa/ipu3/ipa_context.h
@@ -84,6 +84,11 @@ struct IPAFrameContext : public FrameContext {
 };
 
 struct IPAContext {
+	IPAContext(unsigned int frameContextSize)
+		: frameContexts(frameContextSize)
+	{
+	}
+
 	IPASessionConfiguration configuration;
 	IPAActiveState activeState;
 
diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp
index 10a8c86d8..938bc8228 100644
--- a/src/ipa/ipu3/ipu3.cpp
+++ b/src/ipa/ipu3/ipu3.cpp
@@ -187,7 +187,7 @@ private:
 };
 
 IPAIPU3::IPAIPU3()
-	: context_({ {}, {}, { kMaxFrameContexts }, {} })
+	: context_(kMaxFrameContexts)
 {
 }
 
-- 
2.44.1



More information about the libcamera-devel mailing list