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-18 09:15:58 +01:00
parent 735f0ffeaa
commit c1597f9896
32 changed files with 375 additions and 278 deletions

View file

@ -41,10 +41,18 @@ void Noise::switchMode(CameraMode const &cameraMode,
modeFactor_ = std::max(1.0, cameraMode.noiseFactor);
}
int Noise::read(boost::property_tree::ptree const &params)
int Noise::read(const libcamera::YamlObject &params)
{
referenceConstant_ = params.get<double>("reference_constant");
referenceSlope_ = params.get<double>("reference_slope");
auto value = params["reference_constant"].get<double>();
if (!value)
return -EINVAL;
referenceConstant_ = *value;
value = params["reference_slope"].get<double>();
if (!value)
return -EINVAL;
referenceSlope_ = *value;
return 0;
}