Health-GPS  1.2.2.0
Global Health Policy Simulation model (Health-GPS)
model_parser.h
Go to the documentation of this file.
1 #pragma once
2 #include "HealthGPS/repository.h"
4 
5 #include "jsonparser.h"
6 #include "options.h"
7 
8 #include <utility>
9 
10 namespace host {
11 
15 hgps::BaselineAdjustment load_baseline_adjustments(const poco::BaselineInfo &info);
16 
22 std::unique_ptr<hgps::RiskFactorModelDefinition>
23 load_static_risk_model_definition(const std::string &model_name, const poco::json &opt);
24 
31 std::unique_ptr<hgps::RiskFactorModelDefinition>
32 load_dynamic_risk_model_definition(const std::string &model_name, const poco::json &opt,
33  const poco::SettingsInfo &settings);
34 
38 std::unique_ptr<hgps::LiteHierarchicalModelDefinition>
40 
45 std::unique_ptr<hgps::EnergyBalanceModelDefinition>
46 load_newebm_risk_model_definition(const poco::json &opt, const poco::SettingsInfo &settings);
47 
53 std::pair<hgps::HierarchicalModelType, std::unique_ptr<hgps::RiskFactorModelDefinition>>
54 load_risk_model_definition(const std::string &model_type, const poco::json &opt,
55  const poco::SettingsInfo &settings);
56 
61 poco::json load_json(const std::string &model_filename);
62 
68  const poco::ModellingInfo &info,
69  const poco::SettingsInfo &settings);
70 } // namespace host
Implements the cached data repository for input datasets and back-end storage.
Definition: repository.h:69
nlohmann::json json
JSON parser namespace alias.
Definition: jsonparser.h:16
Top-level namespace for Health-GPS Console host application.
Definition: configuration.cpp:31
std::unique_ptr< hgps::LiteHierarchicalModelDefinition > load_ebhlm_risk_model_definition(const poco::json &opt)
Loads the old energy balance model definition from a JSON file.
Definition: model_parser.cpp:129
std::unique_ptr< hgps::EnergyBalanceModelDefinition > load_newebm_risk_model_definition(const poco::json &opt, const poco::SettingsInfo &settings)
Loads the new energy balance model definition from a JSON file.
Definition: model_parser.cpp:205
hgps::BaselineAdjustment load_baseline_adjustments(const poco::BaselineInfo &info)
Loads baseline adjustments information from a file.
Definition: model_parser.cpp:21
std::unique_ptr< hgps::RiskFactorModelDefinition > load_static_risk_model_definition(const std::string &model_name, const poco::json &opt)
Loads the full hierarchical linear regression model definition from a JSON file.
Definition: model_parser.cpp:47
std::unique_ptr< hgps::RiskFactorModelDefinition > load_dynamic_risk_model_definition(const std::string &model_name, const poco::json &opt, const poco::SettingsInfo &settings)
Loads a dynamic model from a JSON file.
Definition: model_parser.cpp:114
std::pair< hgps::HierarchicalModelType, std::unique_ptr< hgps::RiskFactorModelDefinition > > load_risk_model_definition(const std::string &model_type, const poco::json &opt, const poco::SettingsInfo &settings)
Loads a risk model definition from a JSON file.
Definition: model_parser.cpp:260
poco::json load_json(const std::string &model_filename)
Load and parse the model file.
Definition: model_parser.cpp:278
void register_risk_factor_model_definitions(hgps::CachedRepository &repository, const poco::ModellingInfo &info, const poco::SettingsInfo &settings)
Registers a risk factor model definition with the repository.
Definition: model_parser.cpp:287
Defines the risk factor baseline adjustment data type.
Definition: riskfactor_adjustment_types.h:14