[libcamera-devel] [PATCH v5 09/19] ipa: ipu3: tonemapping: Implement configure call
Jean-Michel Hautbois
jeanmichel.hautbois at ideasonboard.com
Tue Oct 26 13:23:30 CEST 2021
Let the algorithm perform its initial configuration. Implement
configure() to set a default gamma value and let process do the updates
needed.
Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois at ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
---
src/ipa/ipu3/algorithms/tone_mapping.cpp | 16 ++++++++++++++++
src/ipa/ipu3/algorithms/tone_mapping.h | 1 +
2 files changed, 17 insertions(+)
diff --git a/src/ipa/ipu3/algorithms/tone_mapping.cpp b/src/ipa/ipu3/algorithms/tone_mapping.cpp
index 40337f9d..fcd22d0b 100644
--- a/src/ipa/ipu3/algorithms/tone_mapping.cpp
+++ b/src/ipa/ipu3/algorithms/tone_mapping.cpp
@@ -19,6 +19,22 @@ ToneMapping::ToneMapping()
{
}
+/**
+ * \brief Configure the tone mapping given a configInfo
+ * \param[in] context The shared IPA context
+ * \param[in] configInfo The IPA configuration data
+ *
+ * \return 0
+ */
+int ToneMapping::configure(IPAContext &context,
+ [[maybe_unused]] const IPAConfigInfo &configInfo)
+{
+ /* Initialise tone mapping gamma value. */
+ context.frameContext.toneMapping.gamma = 0.0;
+
+ return 0;
+}
+
void ToneMapping::prepare([[maybe_unused]] IPAContext &context,
ipu3_uapi_params *params)
{
diff --git a/src/ipa/ipu3/algorithms/tone_mapping.h b/src/ipa/ipu3/algorithms/tone_mapping.h
index 1dae4f9a..46dd6171 100644
--- a/src/ipa/ipu3/algorithms/tone_mapping.h
+++ b/src/ipa/ipu3/algorithms/tone_mapping.h
@@ -18,6 +18,7 @@ class ToneMapping : public Algorithm
public:
ToneMapping();
+ int configure(IPAContext &context, const IPAConfigInfo &configInfo) override;
void prepare(IPAContext &context, ipu3_uapi_params *params) override;
void process(IPAContext &context, const ipu3_uapi_stats_3a *stats) override;
--
2.32.0
More information about the libcamera-devel
mailing list