diff options
author | Jacopo Mondi <jacopo.mondi@ideasonboard.com> | 2024-10-16 11:42:31 +0200 |
---|---|---|
committer | Jacopo Mondi <jacopo.mondi@ideasonboard.com> | 2024-10-30 15:48:18 +0100 |
commit | 38eee6c0ad64abf554235460d55d85a3be74ae9f (patch) | |
tree | 15df82e572872d0e42868647eb6b2db295facff3 /src/ipa/rkisp1 | |
parent | ff069d87e263cd41f9d5d74774609c8b0ecbcb2a (diff) |
libipa: FrameContext: Move init() to FrameContext
The FCtQueue structure initializes a new FrameContext using its init()
function. In case of request underrun, where a FrameContext is
initialized without application's controls being supplied, the
FrameContext needs to be initialized to default values.
In order to allow the single IPAs to initialize a FrameContext to
the desired default values, move the init() function to the FrameContext
structure, which each IPA derives to a per-IPA type.
In this way each IPA can override the FrameContext::init() function
and initialize the FrameContext to the desired default values.
Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Diffstat (limited to 'src/ipa/rkisp1')
-rw-r--r-- | src/ipa/rkisp1/ipa_context.cpp | 5 | ||||
-rw-r--r-- | src/ipa/rkisp1/ipa_context.h | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/ipa/rkisp1/ipa_context.cpp b/src/ipa/rkisp1/ipa_context.cpp index 14d0c02a..4e4fe5f4 100644 --- a/src/ipa/rkisp1/ipa_context.cpp +++ b/src/ipa/rkisp1/ipa_context.cpp @@ -417,6 +417,11 @@ namespace libcamera::ipa::rkisp1 { * \brief Analogue gain multiplier */ +void IPAFrameContext::init(const uint32_t frameNum) +{ + FrameContext::init(frameNum); +} + /** * \struct IPAContext * \brief Global IPA context data shared between all algorithms diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h index e274d9b0..51e04bc3 100644 --- a/src/ipa/rkisp1/ipa_context.h +++ b/src/ipa/rkisp1/ipa_context.h @@ -177,6 +177,8 @@ struct IPAFrameContext : public FrameContext { struct { Matrix<float, 3, 3> ccm; } ccm; + + void init(const uint32_t frame) override; }; struct IPAContext { |