ipa: raspberrypi: Return an error code from Algorithm::read()

When encountering errors, the Algorithm::read() function either uses
LOG(Fatal) or throws exceptions from the boost property_tree functions.
To prepare for replacing boost JSON parse with the YamlParser class,
give the Algorithm::read() function the ability to return an error code,
and propagate it all the way to the IPA module init() function.

All algorithm classes return a hardcoded 0 value for now, subsequent
commits will change that.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
Tested-by: Naushir Patuck <naush@raspberrypi.com>
This commit is contained in:
Laurent Pinchart 2022-07-26 02:36:38 +03:00
parent 0c84c67e39
commit f357b1bf6e
31 changed files with 151 additions and 75 deletions

View file

@ -38,7 +38,7 @@ char const *Contrast::name() const
return NAME;
}
void Contrast::read(boost::property_tree::ptree const &params)
int Contrast::read(boost::property_tree::ptree const &params)
{
/* enable adaptive enhancement by default */
config_.ceEnable = params.get<int>("ce_enable", 1);
@ -52,7 +52,7 @@ void Contrast::read(boost::property_tree::ptree const &params)
config_.hiHistogram = params.get<double>("hi_histogram", 0.95);
config_.hiLevel = params.get<double>("hi_level", 0.95);
config_.hiMax = params.get<double>("hi_max", 2000);
config_.gammaCurve.read(params.get_child("gamma_curve"));
return config_.gammaCurve.read(params.get_child("gamma_curve"));
}
void Contrast::setBrightness(double brightness)