ipa: raspberrypi: Use YamlParser to replace dependency on boost

The Raspberry Pi IPA module depends on boost only to parse the JSON
tuning data files. As libcamera depends on libyaml, use the YamlParser
class to parse those files and drop the dependency on boost.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
This commit is contained in:
Laurent Pinchart
2022-07-28 13:47:50 +03:00
parent 735f0ffeaa
commit c1597f9896
32 changed files with 375 additions and 278 deletions
+4 -4
View File
@@ -19,20 +19,20 @@ namespace RPiController {
/* Control algorithm to perform AWB calculations. */
struct AwbMode {
int read(boost::property_tree::ptree const &params);
int read(const libcamera::YamlObject &params);
double ctLo; /* low CT value for search */
double ctHi; /* high CT value for search */
};
struct AwbPrior {
int read(boost::property_tree::ptree const &params);
int read(const libcamera::YamlObject &params);
double lux; /* lux level */
Pwl prior; /* maps CT to prior log likelihood for this lux level */
};
struct AwbConfig {
AwbConfig() : defaultMode(nullptr) {}
int read(boost::property_tree::ptree const &params);
int read(const libcamera::YamlObject &params);
/* Only repeat the AWB calculation every "this many" frames */
uint16_t framePeriod;
/* number of initial frames for which speed taken as 1.0 (maximum) */
@@ -90,7 +90,7 @@ public:
~Awb();
char const *name() const override;
void initialise() override;
int read(boost::property_tree::ptree const &params) override;
int read(const libcamera::YamlObject &params) override;
/* AWB handles "pausing" for itself. */
bool isPaused() const override;
void pause() override;