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:
@@ -35,14 +35,20 @@ char const *Geq::name() const
|
||||
return NAME;
|
||||
}
|
||||
|
||||
void Geq::read(boost::property_tree::ptree const ¶ms)
|
||||
int Geq::read(boost::property_tree::ptree const ¶ms)
|
||||
{
|
||||
config_.offset = params.get<uint16_t>("offset", 0);
|
||||
config_.slope = params.get<double>("slope", 0.0);
|
||||
if (config_.slope < 0.0 || config_.slope >= 1.0)
|
||||
LOG(RPiGeq, Fatal) << "Geq: bad slope value";
|
||||
if (params.get_child_optional("strength"))
|
||||
config_.strength.read(params.get_child("strength"));
|
||||
|
||||
if (params.get_child_optional("strength")) {
|
||||
int ret = config_.strength.read(params.get_child("strength"));
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void Geq::prepare(Metadata *imageMetadata)
|
||||
|
||||
Reference in New Issue
Block a user