@@ -54,6 +54,9 @@ namespace libcamera::ipa::ipu3 {
*
* \var IPAContext::ctrlMap
* \brief A ControlInfoMap::Map of controls populated by the algorithms
+ *
+ * \var IPAContext::sensorInfo
+ * \brief An IPACameraSensorInfo instance holding information about the sensor
*/
/**
@@ -15,6 +15,8 @@
#include <libcamera/controls.h>
#include <libcamera/geometry.h>
+#include <libcamera/ipa/core_ipa_interface.h>
+
#include <libipa/awb.h>
#include <libipa/ccm.h>
#include <libipa/fc_queue.h>
@@ -93,6 +95,7 @@ struct IPAContext {
FCQueue<IPAFrameContext> frameContexts;
ControlInfoMap::Map ctrlMap;
+ IPACameraSensorInfo sensorInfo;
};
} /* namespace ipa::ipu3 */
@@ -313,6 +313,7 @@ int IPAIPU3::init(const IPASettings &settings,
context_.configuration = {};
context_.configuration.sensor.lineDuration =
sensorInfo.minLineLength * 1.0s / sensorInfo.pixelRate;
+ context_.sensorInfo = sensorInfo;
/* Load the tuning data file. */
File file(settings.configurationFile);
Add an instance of IPACameraSensorInfo to the IPAContext and fill it during IPAIPU3::init(). This will allow us to pass sensor information to algorithms at init time. Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com> --- src/ipa/ipu3/ipa_context.cpp | 3 +++ src/ipa/ipu3/ipa_context.h | 3 +++ src/ipa/ipu3/ipu3.cpp | 1 + 3 files changed, 7 insertions(+)