diff options
Diffstat (limited to 'src/ipa/rkisp1/algorithms')
-rw-r--r-- | src/ipa/rkisp1/algorithms/agc.cpp | 8 | ||||
-rw-r--r-- | src/ipa/rkisp1/algorithms/agc.h | 4 | ||||
-rw-r--r-- | src/ipa/rkisp1/algorithms/algorithm.h | 5 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/ipa/rkisp1/algorithms/agc.cpp b/src/ipa/rkisp1/algorithms/agc.cpp index 17d074d9..1e41df5b 100644 --- a/src/ipa/rkisp1/algorithms/agc.cpp +++ b/src/ipa/rkisp1/algorithms/agc.cpp @@ -204,6 +204,14 @@ int Agc::configure(IPAContext &context, const IPACameraSensorInfo &configInfo) return 0; } +void Agc::initFrameContext(IPAContext &context, + IPAFrameContext &frameContext) +{ + auto &agc = context.activeState.agc; + + frameContext.agc.meteringMode = agc.meteringMode; +} + /** * \copydoc libcamera::ipa::Algorithm::queueRequest */ diff --git a/src/ipa/rkisp1/algorithms/agc.h b/src/ipa/rkisp1/algorithms/agc.h index aa86f2c5..c1adf91b 100644 --- a/src/ipa/rkisp1/algorithms/agc.h +++ b/src/ipa/rkisp1/algorithms/agc.h @@ -30,6 +30,10 @@ public: int init(IPAContext &context, const YamlObject &tuningData) override; int configure(IPAContext &context, const IPACameraSensorInfo &configInfo) override; + + void initFrameContext(IPAContext &context, + IPAFrameContext &frameContext) override; + void queueRequest(IPAContext &context, const uint32_t frame, IPAFrameContext &frameContext, diff --git a/src/ipa/rkisp1/algorithms/algorithm.h b/src/ipa/rkisp1/algorithms/algorithm.h index 715cfcd8..82603b7b 100644 --- a/src/ipa/rkisp1/algorithms/algorithm.h +++ b/src/ipa/rkisp1/algorithms/algorithm.h @@ -23,6 +23,11 @@ public: { } + virtual void initFrameContext([[maybe_unused]] IPAContext &context, + [[maybe_unused]] IPAFrameContext &frameContext) + { + } + bool disabled_; bool supportsRaw_; }; |