[libcamera-devel] [PATCH 3/4] ipa: raspberrypi: Rename the controller namespace from Rpi to RpiController

Kieran Bingham kieran.bingham at ideasonboard.com
Wed Sep 23 13:07:58 CEST 2020


Hi Jacopo, / Naush

On 23/09/2020 08:58, Jacopo Mondi wrote:
> Hi Naush,
> 
> On Tue, Sep 22, 2020 at 10:50:17AM +0100, Naushir Patuck wrote:
>> This avoids a namespace clash with the RPi namespace used by the ipa and
>> pipeline handlers, and cleans up the syntax slightly.
> 
> So we'll have:
> libcamera::RPi:: used by the pipeline handler and the IPA main module and
> RPiController:: used by the IPA main module and the controller library
> 
> I wonder if we need a libcamera::IPA:: namespace...

I came here from the previous patch just to say this, and now I see
you've beaten me to it ;-)

Perhaps this could/should then be

ipa::rpi::controller ?

Where in side an IPA it would be acceptable to use a
 'using namespace ipa;'


> For this patch
> Reviewed-by: Jacopo Mondi <jacopo at jmondi.org>
> 

Either way, getting rid of the requirement to explicitly specify the
top-level namespace with a 'double ::' is nicer.

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

> Thanks
>   j
> 
>>
>> There are no functional changes in this commit.
>>
>> Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
>> ---
>>  src/ipa/raspberrypi/cam_helper.cpp            |  2 +-
>>  src/ipa/raspberrypi/cam_helper.hpp            |  2 +-
>>  src/ipa/raspberrypi/cam_helper_imx219.cpp     |  2 +-
>>  src/ipa/raspberrypi/cam_helper_imx477.cpp     |  2 +-
>>  src/ipa/raspberrypi/cam_helper_ov5647.cpp     |  2 +-
>>  .../raspberrypi/controller/agc_algorithm.hpp  |  4 +-
>>  src/ipa/raspberrypi/controller/algorithm.cpp  |  4 +-
>>  src/ipa/raspberrypi/controller/algorithm.hpp  |  4 +-
>>  .../raspberrypi/controller/awb_algorithm.hpp  |  4 +-
>>  .../raspberrypi/controller/ccm_algorithm.hpp  |  4 +-
>>  .../controller/contrast_algorithm.hpp         |  4 +-
>>  src/ipa/raspberrypi/controller/controller.cpp |  2 +-
>>  src/ipa/raspberrypi/controller/controller.hpp |  4 +-
>>  src/ipa/raspberrypi/controller/histogram.cpp  |  2 +-
>>  src/ipa/raspberrypi/controller/histogram.hpp  |  4 +-
>>  src/ipa/raspberrypi/controller/metadata.hpp   |  4 +-
>>  src/ipa/raspberrypi/controller/pwl.cpp        |  2 +-
>>  src/ipa/raspberrypi/controller/pwl.hpp        |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/agc.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/agc.hpp    |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/alsc.cpp   |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/alsc.hpp   |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/awb.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/awb.hpp    |  4 +-
>>  .../controller/rpi/black_level.cpp            |  2 +-
>>  .../controller/rpi/black_level.hpp            |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/ccm.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/ccm.hpp    |  4 +-
>>  .../raspberrypi/controller/rpi/contrast.cpp   |  2 +-
>>  .../raspberrypi/controller/rpi/contrast.hpp   |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/dpc.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/dpc.hpp    |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/focus.cpp  |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/focus.hpp  |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/geq.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/geq.hpp    |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/lux.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/lux.hpp    |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/noise.cpp  |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/noise.hpp  |  4 +-
>>  src/ipa/raspberrypi/controller/rpi/sdn.cpp    |  2 +-
>>  src/ipa/raspberrypi/controller/rpi/sdn.hpp    |  4 +-
>>  .../raspberrypi/controller/rpi/sharpen.cpp    |  2 +-
>>  .../raspberrypi/controller/rpi/sharpen.hpp    |  4 +-
>>  .../controller/sharpen_algorithm.hpp          |  4 +-
>>  src/ipa/raspberrypi/md_parser.cpp             |  2 +-
>>  src/ipa/raspberrypi/md_parser.hpp             |  2 +-
>>  src/ipa/raspberrypi/md_parser_rpi.cpp         |  2 +-
>>  src/ipa/raspberrypi/md_parser_rpi.hpp         |  2 +-
>>  src/ipa/raspberrypi/raspberrypi.cpp           | 52 +++++++++----------
>>  50 files changed, 99 insertions(+), 99 deletions(-)
>>
>> diff --git a/src/ipa/raspberrypi/cam_helper.cpp b/src/ipa/raspberrypi/cam_helper.cpp
>> index b1343eb2..c8ac3232 100644
>> --- a/src/ipa/raspberrypi/cam_helper.cpp
>> +++ b/src/ipa/raspberrypi/cam_helper.cpp
>> @@ -16,7 +16,7 @@
>>  #include "cam_helper.hpp"
>>  #include "md_parser.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  static std::map<std::string, CamHelperCreateFunc> cam_helpers;
>>
>> diff --git a/src/ipa/raspberrypi/cam_helper.hpp b/src/ipa/raspberrypi/cam_helper.hpp
>> index 97ce3e92..044c2866 100644
>> --- a/src/ipa/raspberrypi/cam_helper.hpp
>> +++ b/src/ipa/raspberrypi/cam_helper.hpp
>> @@ -13,7 +13,7 @@
>>
>>  #include "libcamera/internal/v4l2_videodevice.h"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // The CamHelper class provides a number of facilities that anyone trying
>>  // trying to drive a camera will need to know, but which are not provided by
>> diff --git a/src/ipa/raspberrypi/cam_helper_imx219.cpp b/src/ipa/raspberrypi/cam_helper_imx219.cpp
>> index 1b9ce382..db8ab879 100644
>> --- a/src/ipa/raspberrypi/cam_helper_imx219.cpp
>> +++ b/src/ipa/raspberrypi/cam_helper_imx219.cpp
>> @@ -23,7 +23,7 @@
>>  #include "md_parser_rpi.hpp"
>>  #endif
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  /* Metadata parser implementation specific to Sony IMX219 sensors. */
>>
>> diff --git a/src/ipa/raspberrypi/cam_helper_imx477.cpp b/src/ipa/raspberrypi/cam_helper_imx477.cpp
>> index a53b47c0..0e896ac7 100644
>> --- a/src/ipa/raspberrypi/cam_helper_imx477.cpp
>> +++ b/src/ipa/raspberrypi/cam_helper_imx477.cpp
>> @@ -13,7 +13,7 @@
>>  #include "cam_helper.hpp"
>>  #include "md_parser.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  /* Metadata parser implementation specific to Sony IMX477 sensors. */
>>
>> diff --git a/src/ipa/raspberrypi/cam_helper_ov5647.cpp b/src/ipa/raspberrypi/cam_helper_ov5647.cpp
>> index 3dbcb164..dc5d8275 100644
>> --- a/src/ipa/raspberrypi/cam_helper_ov5647.cpp
>> +++ b/src/ipa/raspberrypi/cam_helper_ov5647.cpp
>> @@ -10,7 +10,7 @@
>>  #include "cam_helper.hpp"
>>  #include "md_parser_rpi.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  class CamHelperOv5647 : public CamHelper
>>  {
>> diff --git a/src/ipa/raspberrypi/controller/agc_algorithm.hpp b/src/ipa/raspberrypi/controller/agc_algorithm.hpp
>> index f29bb3ac..b4ea54fb 100644
>> --- a/src/ipa/raspberrypi/controller/agc_algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/agc_algorithm.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class AgcAlgorithm : public Algorithm
>>  {
>> @@ -25,4 +25,4 @@ public:
>>  	SetConstraintMode(std::string const &contraint_mode_name) = 0;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/algorithm.cpp b/src/ipa/raspberrypi/controller/algorithm.cpp
>> index 1b80e296..43ad0a2b 100644
>> --- a/src/ipa/raspberrypi/controller/algorithm.cpp
>> +++ b/src/ipa/raspberrypi/controller/algorithm.cpp
>> @@ -7,7 +7,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  void Algorithm::Read([[maybe_unused]] boost::property_tree::ptree const &params)
>>  {
>> @@ -32,7 +32,7 @@ void Algorithm::Process([[maybe_unused]] StatisticsPtr &stats,
>>  // For registering algorithms with the system:
>>
>>  static std::map<std::string, AlgoCreateFunc> algorithms;
>> -std::map<std::string, AlgoCreateFunc> const &RPi::GetAlgorithms()
>> +std::map<std::string, AlgoCreateFunc> const &RPiController::GetAlgorithms()
>>  {
>>  	return algorithms;
>>  }
>> diff --git a/src/ipa/raspberrypi/controller/algorithm.hpp b/src/ipa/raspberrypi/controller/algorithm.hpp
>> index 187c50c6..6196b2f9 100644
>> --- a/src/ipa/raspberrypi/controller/algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/algorithm.hpp
>> @@ -19,7 +19,7 @@
>>
>>  #include <boost/property_tree/ptree.hpp>
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // This defines the basic interface for all control algorithms.
>>
>> @@ -59,4 +59,4 @@ struct RegisterAlgorithm {
>>  };
>>  std::map<std::string, AlgoCreateFunc> const &GetAlgorithms();
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/awb_algorithm.hpp b/src/ipa/raspberrypi/controller/awb_algorithm.hpp
>> index 22508ddd..5be0c9f4 100644
>> --- a/src/ipa/raspberrypi/controller/awb_algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/awb_algorithm.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class AwbAlgorithm : public Algorithm
>>  {
>> @@ -19,4 +19,4 @@ public:
>>  	virtual void SetManualGains(double manual_r, double manual_b) = 0;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/ccm_algorithm.hpp b/src/ipa/raspberrypi/controller/ccm_algorithm.hpp
>> index 21806cb0..33d0e30d 100644
>> --- a/src/ipa/raspberrypi/controller/ccm_algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/ccm_algorithm.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class CcmAlgorithm : public Algorithm
>>  {
>> @@ -18,4 +18,4 @@ public:
>>  	virtual void SetSaturation(double saturation) = 0;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/contrast_algorithm.hpp b/src/ipa/raspberrypi/controller/contrast_algorithm.hpp
>> index 9780322b..7f03bba5 100644
>> --- a/src/ipa/raspberrypi/controller/contrast_algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/contrast_algorithm.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class ContrastAlgorithm : public Algorithm
>>  {
>> @@ -19,4 +19,4 @@ public:
>>  	virtual void SetContrast(double contrast) = 0;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/controller.cpp b/src/ipa/raspberrypi/controller/controller.cpp
>> index 7c4b04fe..22461cc4 100644
>> --- a/src/ipa/raspberrypi/controller/controller.cpp
>> +++ b/src/ipa/raspberrypi/controller/controller.cpp
>> @@ -11,7 +11,7 @@
>>  #include <boost/property_tree/json_parser.hpp>
>>  #include <boost/property_tree/ptree.hpp>
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  Controller::Controller()
>>  	: switch_mode_called_(false) {}
>> diff --git a/src/ipa/raspberrypi/controller/controller.hpp b/src/ipa/raspberrypi/controller/controller.hpp
>> index 6ba9412b..49b1a551 100644
>> --- a/src/ipa/raspberrypi/controller/controller.hpp
>> +++ b/src/ipa/raspberrypi/controller/controller.hpp
>> @@ -19,7 +19,7 @@
>>  #include "device_status.h"
>>  #include "metadata.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Algorithm;
>>  typedef std::unique_ptr<Algorithm> AlgorithmPtr;
>> @@ -51,4 +51,4 @@ protected:
>>  	bool switch_mode_called_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/histogram.cpp b/src/ipa/raspberrypi/controller/histogram.cpp
>> index 103d3f60..9916b3ed 100644
>> --- a/src/ipa/raspberrypi/controller/histogram.cpp
>> +++ b/src/ipa/raspberrypi/controller/histogram.cpp
>> @@ -9,7 +9,7 @@
>>
>>  #include "histogram.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  uint64_t Histogram::CumulativeFreq(double bin) const
>>  {
>> diff --git a/src/ipa/raspberrypi/controller/histogram.hpp b/src/ipa/raspberrypi/controller/histogram.hpp
>> index 06fc3aa7..90f5ac78 100644
>> --- a/src/ipa/raspberrypi/controller/histogram.hpp
>> +++ b/src/ipa/raspberrypi/controller/histogram.hpp
>> @@ -13,7 +13,7 @@
>>  // A simple histogram class, for use in particular to find "quantiles" and
>>  // averages between "quantiles".
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Histogram
>>  {
>> @@ -41,4 +41,4 @@ private:
>>  	std::vector<uint64_t> cumulative_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/metadata.hpp b/src/ipa/raspberrypi/controller/metadata.hpp
>> index 1d7624a0..f3a8dfab 100644
>> --- a/src/ipa/raspberrypi/controller/metadata.hpp
>> +++ b/src/ipa/raspberrypi/controller/metadata.hpp
>> @@ -15,7 +15,7 @@
>>
>>  #include <boost/any.hpp>
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Metadata
>>  {
>> @@ -74,4 +74,4 @@ private:
>>
>>  typedef std::shared_ptr<Metadata> MetadataPtr;
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/pwl.cpp b/src/ipa/raspberrypi/controller/pwl.cpp
>> index 7e11d8f3..aa134a1f 100644
>> --- a/src/ipa/raspberrypi/controller/pwl.cpp
>> +++ b/src/ipa/raspberrypi/controller/pwl.cpp
>> @@ -10,7 +10,7 @@
>>
>>  #include "pwl.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  void Pwl::Read(boost::property_tree::ptree const &params)
>>  {
>> diff --git a/src/ipa/raspberrypi/controller/pwl.hpp b/src/ipa/raspberrypi/controller/pwl.hpp
>> index bd7c7668..4f168551 100644
>> --- a/src/ipa/raspberrypi/controller/pwl.hpp
>> +++ b/src/ipa/raspberrypi/controller/pwl.hpp
>> @@ -11,7 +11,7 @@
>>
>>  #include <boost/property_tree/ptree.hpp>
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Pwl
>>  {
>> @@ -106,4 +106,4 @@ private:
>>  	std::vector<Point> points_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/agc.cpp b/src/ipa/raspberrypi/controller/rpi/agc.cpp
>> index 3573f36b..df4d3647 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/agc.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/agc.cpp
>> @@ -18,7 +18,7 @@
>>
>>  #include "agc.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.agc"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/agc.hpp b/src/ipa/raspberrypi/controller/rpi/agc.hpp
>> index 9a7e89c1..ba7ae092 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/agc.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/agc.hpp
>> @@ -20,7 +20,7 @@
>>
>>  #define AGC_STATS_SIZE 15
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  struct AgcMeteringMode {
>>  	double weights[AGC_STATS_SIZE];
>> @@ -121,4 +121,4 @@ private:
>>  	double fixed_analogue_gain_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/alsc.cpp b/src/ipa/raspberrypi/controller/rpi/alsc.cpp
>> index 0d0e0b0c..49e60b98 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/alsc.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/alsc.cpp
>> @@ -11,7 +11,7 @@
>>
>>  // Raspberry Pi ALSC (Auto Lens Shading Correction) algorithm.
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.alsc"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/alsc.hpp b/src/ipa/raspberrypi/controller/rpi/alsc.hpp
>> index 95572af0..13d1ba54 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/alsc.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/alsc.hpp
>> @@ -13,7 +13,7 @@
>>  #include "../algorithm.hpp"
>>  #include "../alsc_status.h"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Algorithm to generate automagic LSC (Lens Shading Correction) tables.
>>
>> @@ -102,4 +102,4 @@ private:
>>  	double lambda_b_[ALSC_CELLS_X * ALSC_CELLS_Y];
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/awb.cpp b/src/ipa/raspberrypi/controller/rpi/awb.cpp
>> index a58fa11d..a5536e47 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/awb.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/awb.cpp
>> @@ -10,7 +10,7 @@
>>
>>  #include "awb.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.awb"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/awb.hpp b/src/ipa/raspberrypi/controller/rpi/awb.hpp
>> index 36925252..9124d042 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/awb.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/awb.hpp
>> @@ -14,7 +14,7 @@
>>  #include "../pwl.hpp"
>>  #include "../awb_status.h"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Control algorithm to perform AWB calculations.
>>
>> @@ -175,4 +175,4 @@ static inline Awb::RGB operator*(Awb::RGB const &rgb, double d)
>>  	return d * rgb;
>>  }
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/black_level.cpp b/src/ipa/raspberrypi/controller/rpi/black_level.cpp
>> index 59c9f5a6..0629b77c 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/black_level.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/black_level.cpp
>> @@ -13,7 +13,7 @@
>>
>>  #include "black_level.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.black_level"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/black_level.hpp b/src/ipa/raspberrypi/controller/rpi/black_level.hpp
>> index 5d74c6da..65ec4d0e 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/black_level.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/black_level.hpp
>> @@ -11,7 +11,7 @@
>>
>>  // This is our implementation of the "black level algorithm".
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class BlackLevel : public Algorithm
>>  {
>> @@ -27,4 +27,4 @@ private:
>>  	double black_level_b_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/ccm.cpp b/src/ipa/raspberrypi/controller/rpi/ccm.cpp
>> index 327cb71c..a8a2caff 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/ccm.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/ccm.cpp
>> @@ -13,7 +13,7 @@
>>
>>  #include "ccm.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // This algorithm selects a CCM (Colour Correction Matrix) according to the
>>  // colour temperature estimated by AWB (interpolating between known matricies as
>> diff --git a/src/ipa/raspberrypi/controller/rpi/ccm.hpp b/src/ipa/raspberrypi/controller/rpi/ccm.hpp
>> index f6f4dee1..fcf077e7 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/ccm.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/ccm.hpp
>> @@ -12,7 +12,7 @@
>>  #include "../ccm_algorithm.hpp"
>>  #include "../pwl.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Algorithm to calculate colour matrix. Should be placed after AWB.
>>
>> @@ -73,4 +73,4 @@ private:
>>  	std::atomic<double> saturation_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/contrast.cpp b/src/ipa/raspberrypi/controller/rpi/contrast.cpp
>> index c8d9ab61..103153db 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/contrast.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/contrast.cpp
>> @@ -11,7 +11,7 @@
>>
>>  #include "contrast.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // This is a very simple control algorithm which simply retrieves the results of
>>  // AGC and AWB via their "status" metadata, and applies digital gain to the
>> diff --git a/src/ipa/raspberrypi/controller/rpi/contrast.hpp b/src/ipa/raspberrypi/controller/rpi/contrast.hpp
>> index 2e38a762..6836f181 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/contrast.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/contrast.hpp
>> @@ -12,7 +12,7 @@
>>  #include "../contrast_algorithm.hpp"
>>  #include "../pwl.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Back End algorithm to appaly correct digital gain. Should be placed after
>>  // Back End AWB.
>> @@ -48,4 +48,4 @@ private:
>>  	std::mutex mutex_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/dpc.cpp b/src/ipa/raspberrypi/controller/rpi/dpc.cpp
>> index d31fae97..348e1609 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/dpc.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/dpc.cpp
>> @@ -8,7 +8,7 @@
>>  #include "../logging.hpp"
>>  #include "dpc.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // We use the lux status so that we can apply stronger settings in darkness (if
>>  // necessary).
>> diff --git a/src/ipa/raspberrypi/controller/rpi/dpc.hpp b/src/ipa/raspberrypi/controller/rpi/dpc.hpp
>> index 9fb72867..d90285c4 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/dpc.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/dpc.hpp
>> @@ -9,7 +9,7 @@
>>  #include "../algorithm.hpp"
>>  #include "../dpc_status.h"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Back End algorithm to apply appropriate GEQ settings.
>>
>> @@ -29,4 +29,4 @@ private:
>>  	DpcConfig config_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/focus.cpp b/src/ipa/raspberrypi/controller/rpi/focus.cpp
>> index ffe44362..bab4406f 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/focus.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/focus.cpp
>> @@ -11,7 +11,7 @@
>>  #include "../focus_status.h"
>>  #include "focus.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>  using namespace libcamera;
>>
>>  LOG_DEFINE_CATEGORY(RPiFocus)
>> diff --git a/src/ipa/raspberrypi/controller/rpi/focus.hpp b/src/ipa/raspberrypi/controller/rpi/focus.hpp
>> index a9756ea7..131b1d0f 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/focus.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/focus.hpp
>> @@ -15,7 +15,7 @@
>>   * control.
>>   */
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Focus : public Algorithm
>>  {
>> @@ -25,4 +25,4 @@ public:
>>  	void Process(StatisticsPtr &stats, Metadata *image_metadata) override;
>>  };
>>
>> -} /* namespace RPi */
>> +} /* namespace RPiController */
>> diff --git a/src/ipa/raspberrypi/controller/rpi/geq.cpp b/src/ipa/raspberrypi/controller/rpi/geq.cpp
>> index ee0cb95d..b6c98414 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/geq.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/geq.cpp
>> @@ -12,7 +12,7 @@
>>
>>  #include "geq.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // We use the lux status so that we can apply stronger settings in darkness (if
>>  // necessary).
>> diff --git a/src/ipa/raspberrypi/controller/rpi/geq.hpp b/src/ipa/raspberrypi/controller/rpi/geq.hpp
>> index 7d4bd38d..8ba3046b 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/geq.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/geq.hpp
>> @@ -9,7 +9,7 @@
>>  #include "../algorithm.hpp"
>>  #include "../geq_status.h"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Back End algorithm to apply appropriate GEQ settings.
>>
>> @@ -31,4 +31,4 @@ private:
>>  	GeqConfig config_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/lux.cpp b/src/ipa/raspberrypi/controller/rpi/lux.cpp
>> index 154db153..5acd49a0 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/lux.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/lux.cpp
>> @@ -13,7 +13,7 @@
>>
>>  #include "lux.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.lux"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/lux.hpp b/src/ipa/raspberrypi/controller/rpi/lux.hpp
>> index eb935409..7b6c7258 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/lux.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/lux.hpp
>> @@ -14,7 +14,7 @@
>>
>>  // This is our implementation of the "lux control algorithm".
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Lux : public Algorithm
>>  {
>> @@ -39,4 +39,4 @@ private:
>>  	std::mutex mutex_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/noise.cpp b/src/ipa/raspberrypi/controller/rpi/noise.cpp
>> index 1b84ecb0..9e9eaf1b 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/noise.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/noise.cpp
>> @@ -13,7 +13,7 @@
>>
>>  #include "noise.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.noise"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/noise.hpp b/src/ipa/raspberrypi/controller/rpi/noise.hpp
>> index 25bf1885..6f6e0be9 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/noise.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/noise.hpp
>> @@ -11,7 +11,7 @@
>>
>>  // This is our implementation of the "noise algorithm".
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Noise : public Algorithm
>>  {
>> @@ -29,4 +29,4 @@ private:
>>  	std::atomic<double> mode_factor_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/sdn.cpp b/src/ipa/raspberrypi/controller/rpi/sdn.cpp
>> index 28d9d983..aa82830b 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/sdn.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/sdn.cpp
>> @@ -10,7 +10,7 @@
>>
>>  #include "sdn.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // Calculate settings for the spatial denoise block using the noise profile in
>>  // the image metadata.
>> diff --git a/src/ipa/raspberrypi/controller/rpi/sdn.hpp b/src/ipa/raspberrypi/controller/rpi/sdn.hpp
>> index d48aab7e..486c000d 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/sdn.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/sdn.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "../algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Algorithm to calculate correct spatial denoise (SDN) settings.
>>
>> @@ -26,4 +26,4 @@ private:
>>  	double strength_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/rpi/sharpen.cpp b/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
>> index 356c1058..c953a7d9 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
>> @@ -12,7 +12,7 @@
>>
>>  #include "sharpen.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  #define NAME "rpi.sharpen"
>>
>> diff --git a/src/ipa/raspberrypi/controller/rpi/sharpen.hpp b/src/ipa/raspberrypi/controller/rpi/sharpen.hpp
>> index 568521b9..13a076a8 100644
>> --- a/src/ipa/raspberrypi/controller/rpi/sharpen.hpp
>> +++ b/src/ipa/raspberrypi/controller/rpi/sharpen.hpp
>> @@ -11,7 +11,7 @@
>>
>>  // This is our implementation of the "sharpen algorithm".
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class Sharpen : public SharpenAlgorithm
>>  {
>> @@ -31,4 +31,4 @@ private:
>>  	double user_strength_;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/controller/sharpen_algorithm.hpp b/src/ipa/raspberrypi/controller/sharpen_algorithm.hpp
>> index 3b27a745..ca800308 100644
>> --- a/src/ipa/raspberrypi/controller/sharpen_algorithm.hpp
>> +++ b/src/ipa/raspberrypi/controller/sharpen_algorithm.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "algorithm.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class SharpenAlgorithm : public Algorithm
>>  {
>> @@ -18,4 +18,4 @@ public:
>>  	virtual void SetStrength(double strength) = 0;
>>  };
>>
>> -} // namespace RPi
>> +} // namespace RPiController
>> diff --git a/src/ipa/raspberrypi/md_parser.cpp b/src/ipa/raspberrypi/md_parser.cpp
>> index ca809aa2..d82c102c 100644
>> --- a/src/ipa/raspberrypi/md_parser.cpp
>> +++ b/src/ipa/raspberrypi/md_parser.cpp
>> @@ -11,7 +11,7 @@
>>
>>  #include "md_parser.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  // This function goes through the embedded data to find the offsets (not
>>  // values!), in the data block, where the values of the given registers can
>> diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
>> index 70d054b2..c9db62c0 100644
>> --- a/src/ipa/raspberrypi/md_parser.hpp
>> +++ b/src/ipa/raspberrypi/md_parser.hpp
>> @@ -50,7 +50,7 @@ parser->Reset();
>>
>>  before calling Parse again. */
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  // Abstract base class from which other metadata parsers are derived.
>>
>> diff --git a/src/ipa/raspberrypi/md_parser_rpi.cpp b/src/ipa/raspberrypi/md_parser_rpi.cpp
>> index a42b28f7..2b0bcfc5 100644
>> --- a/src/ipa/raspberrypi/md_parser_rpi.cpp
>> +++ b/src/ipa/raspberrypi/md_parser_rpi.cpp
>> @@ -9,7 +9,7 @@
>>
>>  #include "md_parser_rpi.hpp"
>>
>> -using namespace RPi;
>> +using namespace RPiController;
>>
>>  MdParserRPi::MdParserRPi()
>>  {
>> diff --git a/src/ipa/raspberrypi/md_parser_rpi.hpp b/src/ipa/raspberrypi/md_parser_rpi.hpp
>> index 1fa334f4..52f54f00 100644
>> --- a/src/ipa/raspberrypi/md_parser_rpi.hpp
>> +++ b/src/ipa/raspberrypi/md_parser_rpi.hpp
>> @@ -8,7 +8,7 @@
>>
>>  #include "md_parser.hpp"
>>
>> -namespace RPi {
>> +namespace RPiController {
>>
>>  class MdParserRPi : public MdParser
>>  {
>> diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
>> index 28f81824..0c0dc743 100644
>> --- a/src/ipa/raspberrypi/raspberrypi.cpp
>> +++ b/src/ipa/raspberrypi/raspberrypi.cpp
>> @@ -125,10 +125,10 @@ private:
>>  	CameraMode lastMode_;
>>
>>  	/* Raspberry Pi controller specific defines. */
>> -	std::unique_ptr<::RPi::CamHelper> helper_;
>> -	::RPi::Controller controller_;
>> +	std::unique_ptr<RPiController::CamHelper> helper_;
>> +	RPiController::Controller controller_;
>>  	bool controllerInit_;
>> -	::RPi::Metadata rpiMetadata_;
>> +	RPiController::Metadata rpiMetadata_;
>>
>>  	/*
>>  	 * We count frames to decide if the frame must be hidden (e.g. from
>> @@ -211,7 +211,7 @@ void IPARPi::configure(const CameraSensorInfo &sensorInfo,
>>  	 */
>>  	std::string cameraName(sensorInfo.model);
>>  	if (!helper_) {
>> -		helper_ = std::unique_ptr<::RPi::CamHelper>(::RPi::CamHelper::Create(cameraName));
>> +		helper_ = std::unique_ptr<RPiController::CamHelper>(RPiController::CamHelper::Create(cameraName));
>>  		/*
>>  		 * Pass out the sensor config to the pipeline handler in order
>>  		 * to setup the staggered writer class.
>> @@ -268,7 +268,7 @@ void IPARPi::configure(const CameraSensorInfo &sensorInfo,
>>  		agcStatus.analogue_gain = DEFAULT_ANALOGUE_GAIN;
>>  	}
>>
>> -	::RPi::Metadata metadata;
>> +	RPiController::Metadata metadata;
>>  	controller_.SwitchMode(mode_, &metadata);
>>
>>  	/* SwitchMode may supply updated exposure/gain values to use. */
>> @@ -391,7 +391,7 @@ void IPARPi::processEvent(const IPAOperationData &event)
>>
>>  void IPARPi::reportMetadata()
>>  {
>> -	std::unique_lock<::RPi::Metadata> lock(rpiMetadata_);
>> +	std::unique_lock<RPiController::Metadata> lock(rpiMetadata_);
>>
>>  	/*
>>  	 * Certain information about the current frame and how it will be
>> @@ -496,7 +496,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>
>>  		switch (ctrl.first) {
>>  		case controls::AE_ENABLE: {
>> -			::RPi::Algorithm *agc = controller_.GetAlgorithm("agc");
>> +			RPiController::Algorithm *agc = controller_.GetAlgorithm("agc");
>>  			ASSERT(agc);
>>  			if (ctrl.second.get<bool>() == false)
>>  				agc->Pause();
>> @@ -508,7 +508,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::EXPOSURE_TIME: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>  			/* This expects units of micro-seconds. */
>> @@ -522,7 +522,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::ANALOGUE_GAIN: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>  			agc->SetFixedAnalogueGain(ctrl.second.get<float>());
>> @@ -536,7 +536,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::AE_METERING_MODE: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>
>> @@ -552,7 +552,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::AE_CONSTRAINT_MODE: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>
>> @@ -568,7 +568,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::AE_EXPOSURE_MODE: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>
>> @@ -584,7 +584,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::EXPOSURE_VALUE: {
>> -			::RPi::AgcAlgorithm *agc = dynamic_cast<::RPi::AgcAlgorithm *>(
>> +			RPiController::AgcAlgorithm *agc = dynamic_cast<RPiController::AgcAlgorithm *>(
>>  				controller_.GetAlgorithm("agc"));
>>  			ASSERT(agc);
>>
>> @@ -600,7 +600,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::AWB_ENABLE: {
>> -			::RPi::Algorithm *awb = controller_.GetAlgorithm("awb");
>> +			RPiController::Algorithm *awb = controller_.GetAlgorithm("awb");
>>  			ASSERT(awb);
>>
>>  			if (ctrl.second.get<bool>() == false)
>> @@ -614,7 +614,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::AWB_MODE: {
>> -			::RPi::AwbAlgorithm *awb = dynamic_cast<::RPi::AwbAlgorithm *>(
>> +			RPiController::AwbAlgorithm *awb = dynamic_cast<RPiController::AwbAlgorithm *>(
>>  				controller_.GetAlgorithm("awb"));
>>  			ASSERT(awb);
>>
>> @@ -631,7 +631,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>
>>  		case controls::COLOUR_GAINS: {
>>  			auto gains = ctrl.second.get<Span<const float>>();
>> -			::RPi::AwbAlgorithm *awb = dynamic_cast<::RPi::AwbAlgorithm *>(
>> +			RPiController::AwbAlgorithm *awb = dynamic_cast<RPiController::AwbAlgorithm *>(
>>  				controller_.GetAlgorithm("awb"));
>>  			ASSERT(awb);
>>
>> @@ -644,7 +644,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::BRIGHTNESS: {
>> -			::RPi::ContrastAlgorithm *contrast = dynamic_cast<::RPi::ContrastAlgorithm *>(
>> +			RPiController::ContrastAlgorithm *contrast = dynamic_cast<RPiController::ContrastAlgorithm *>(
>>  				controller_.GetAlgorithm("contrast"));
>>  			ASSERT(contrast);
>>
>> @@ -655,7 +655,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::CONTRAST: {
>> -			::RPi::ContrastAlgorithm *contrast = dynamic_cast<::RPi::ContrastAlgorithm *>(
>> +			RPiController::ContrastAlgorithm *contrast = dynamic_cast<RPiController::ContrastAlgorithm *>(
>>  				controller_.GetAlgorithm("contrast"));
>>  			ASSERT(contrast);
>>
>> @@ -666,7 +666,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::SATURATION: {
>> -			::RPi::CcmAlgorithm *ccm = dynamic_cast<::RPi::CcmAlgorithm *>(
>> +			RPiController::CcmAlgorithm *ccm = dynamic_cast<RPiController::CcmAlgorithm *>(
>>  				controller_.GetAlgorithm("ccm"));
>>  			ASSERT(ccm);
>>
>> @@ -677,7 +677,7 @@ void IPARPi::queueRequest(const ControlList &controls)
>>  		}
>>
>>  		case controls::SHARPNESS: {
>> -			::RPi::SharpenAlgorithm *sharpen = dynamic_cast<::RPi::SharpenAlgorithm *>(
>> +			RPiController::SharpenAlgorithm *sharpen = dynamic_cast<RPiController::SharpenAlgorithm *>(
>>  				controller_.GetAlgorithm("sharpen"));
>>  			ASSERT(sharpen);
>>
>> @@ -720,7 +720,7 @@ void IPARPi::prepareISP(unsigned int bufferId)
>>  		controller_.Prepare(&rpiMetadata_);
>>
>>  		/* Lock the metadata buffer to avoid constant locks/unlocks. */
>> -		std::unique_lock<::RPi::Metadata> lock(rpiMetadata_);
>> +		std::unique_lock<RPiController::Metadata> lock(rpiMetadata_);
>>
>>  		AwbStatus *awbStatus = rpiMetadata_.GetLocked<AwbStatus>("awb.status");
>>  		if (awbStatus)
>> @@ -781,18 +781,18 @@ bool IPARPi::parseEmbeddedData(unsigned int bufferId, struct DeviceStatus &devic
>>
>>  	int size = buffers_.find(bufferId)->second.planes()[0].length;
>>  	helper_->Parser().SetBufferSize(size);
>> -	::RPi::MdParser::Status status = helper_->Parser().Parse(it->second);
>> -	if (status != ::RPi::MdParser::Status::OK) {
>> +	RPiController::MdParser::Status status = helper_->Parser().Parse(it->second);
>> +	if (status != RPiController::MdParser::Status::OK) {
>>  		LOG(IPARPI, Error) << "Embedded Buffer parsing failed, error " << status;
>>  	} else {
>>  		uint32_t exposure_lines, gain_code;
>> -		if (helper_->Parser().GetExposureLines(exposure_lines) != ::RPi::MdParser::Status::OK) {
>> +		if (helper_->Parser().GetExposureLines(exposure_lines) != RPiController::MdParser::Status::OK) {
>>  			LOG(IPARPI, Error) << "Exposure time failed";
>>  			return false;
>>  		}
>>
>>  		deviceStatus.shutter_speed = helper_->Exposure(exposure_lines);
>> -		if (helper_->Parser().GetGainCode(gain_code) != ::RPi::MdParser::Status::OK) {
>> +		if (helper_->Parser().GetGainCode(gain_code) != RPiController::MdParser::Status::OK) {
>>  			LOG(IPARPI, Error) << "Gain failed";
>>  			return false;
>>  		}
>> @@ -815,7 +815,7 @@ void IPARPi::processStats(unsigned int bufferId)
>>  	}
>>
>>  	bcm2835_isp_stats *stats = static_cast<bcm2835_isp_stats *>(it->second);
>> -	::RPi::StatisticsPtr statistics = std::make_shared<bcm2835_isp_stats>(*stats);
>> +	RPiController::StatisticsPtr statistics = std::make_shared<bcm2835_isp_stats>(*stats);
>>  	controller_.Process(statistics, &rpiMetadata_);
>>
>>  	struct AgcStatus agcStatus;
>> --
>> 2.25.1
>>
>> _______________________________________________
>> libcamera-devel mailing list
>> libcamera-devel at lists.libcamera.org
>> https://lists.libcamera.org/listinfo/libcamera-devel
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel at lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel
> 

-- 
Regards
--
Kieran


More information about the libcamera-devel mailing list