summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-10-15 03:28:20 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-10-19 13:14:54 +0300
commit3b07397f0e7d93d54535d9c87e7b9c19d04c97f0 (patch)
tree59bcf3ee79c0f2d8d58a0aa8e9d48aa2fa4ee364
parent5ae92dae5882f5450c647b4af95ef37ba0fded72 (diff)
ipa: ipu3: agc: Remove "using" directive from agc.h header
"using" directives are harmful in headers, as they propagate the namespace short-circuit to all files that include the header, directly or indirectly. Drop the directive from agc.h, and use utils::Duration explicitly. While at it, shorten the namespace qualifier from libcamera::utils:: to utils:: in agc.cpp for Duration. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
-rw-r--r--src/ipa/ipu3/algorithms/agc.cpp6
-rw-r--r--src/ipa/ipu3/algorithms/agc.h14
2 files changed, 9 insertions, 11 deletions
diff --git a/src/ipa/ipu3/algorithms/agc.cpp b/src/ipa/ipu3/algorithms/agc.cpp
index 5eafe82c..970ec424 100644
--- a/src/ipa/ipu3/algorithms/agc.cpp
+++ b/src/ipa/ipu3/algorithms/agc.cpp
@@ -140,20 +140,20 @@ void Agc::lockExposureGain(uint32_t &exposure, double &gain)
double newGain = kEvGainTarget * knumHistogramBins / iqMean_;
/* extracted from Rpi::Agc::computeTargetExposure */
- libcamera::utils::Duration currentShutter = exposure * lineDuration_;
+ utils::Duration currentShutter = exposure * lineDuration_;
currentExposureNoDg_ = currentShutter * gain;
LOG(IPU3Agc, Debug) << "Actual total exposure " << currentExposureNoDg_
<< " Shutter speed " << currentShutter
<< " Gain " << gain;
currentExposure_ = currentExposureNoDg_ * newGain;
- libcamera::utils::Duration maxTotalExposure = maxExposureTime_ * kMaxGain;
+ utils::Duration maxTotalExposure = maxExposureTime_ * kMaxGain;
currentExposure_ = std::min(currentExposure_, maxTotalExposure);
LOG(IPU3Agc, Debug) << "Target total exposure " << currentExposure_;
/* \todo: estimate if we need to desaturate */
filterExposure();
- libcamera::utils::Duration newExposure = 0.0s;
+ utils::Duration newExposure = 0.0s;
if (currentShutter < maxExposureTime_) {
exposure = std::clamp(static_cast<uint32_t>(exposure * currentExposure_ / currentExposureNoDg_), kMinExposure, kMaxExposure);
newExposure = currentExposure_ / exposure;
diff --git a/src/ipa/ipu3/algorithms/agc.h b/src/ipa/ipu3/algorithms/agc.h
index 64b71c65..e0c315fc 100644
--- a/src/ipa/ipu3/algorithms/agc.h
+++ b/src/ipa/ipu3/algorithms/agc.h
@@ -21,8 +21,6 @@ struct IPACameraSensorInfo;
namespace ipa::ipu3::algorithms {
-using utils::Duration;
-
class Agc : public Algorithm
{
public:
@@ -43,13 +41,13 @@ private:
double iqMean_;
- Duration lineDuration_;
- Duration maxExposureTime_;
+ utils::Duration lineDuration_;
+ utils::Duration maxExposureTime_;
- Duration prevExposure_;
- Duration prevExposureNoDg_;
- Duration currentExposure_;
- Duration currentExposureNoDg_;
+ utils::Duration prevExposure_;
+ utils::Duration prevExposureNoDg_;
+ utils::Duration currentExposure_;
+ utils::Duration currentExposureNoDg_;
uint32_t stride_;
};