Health-GPS 3.0.0.0
Global Health Policy Simulation model (Health-GPS)
Loading...
Searching...
No Matches
riskfactor.h
Go to the documentation of this file.
1#pragma once
2
3#include "modelinput.h"
4#include "repository.h"
5
6namespace hgps {
7
10 public:
11 RiskFactorModule() = delete;
12
17 RiskFactorModule(std::map<RiskFactorModelType, std::unique_ptr<RiskFactorModel>> models);
18
19 SimulationModuleType type() const noexcept override;
20
21 const std::string &name() const noexcept override;
22
23 std::size_t size() const noexcept override;
24
25 bool contains(const RiskFactorModelType &model_type) const noexcept override;
26
27 RiskFactorModel &at(const RiskFactorModelType &model_type) const;
28
29 void initialise_population(RuntimeContext &context) override;
30
31 void update_population(RuntimeContext &context) override;
32
33 private:
34 std::map<RiskFactorModelType, std::unique_ptr<RiskFactorModel>> models_;
35 std::string name_{"RiskFactor"};
36};
37
38std::unique_ptr<RiskFactorModule> build_risk_factor_module(Repository &repository,
39 const ModelInput &config);
40
41} // namespace hgps
Generic risk factors module interface to host risk factor models.
Definition interfaces.h:58
Risk factor model interface.
Definition risk_factor_model.h:21
Defines the risk factors module container to hold risk factor models.
Definition riskfactor.h:9
RiskFactorModel & at(const RiskFactorModelType &model_type) const
Definition riskfactor.cpp:41
void initialise_population(RuntimeContext &context) override
Initialises the virtual population.
Definition riskfactor.cpp:45
void update_population(RuntimeContext &context) override
Updates the virtual population status.
Definition riskfactor.cpp:72
SimulationModuleType type() const noexcept override
Gets the module type identifier.
Definition riskfactor.cpp:29
bool contains(const RiskFactorModelType &model_type) const noexcept override
Indicates whether the host contains a model of type.
Definition riskfactor.cpp:37
const std::string & name() const noexcept override
Gets the module name.
Definition riskfactor.cpp:33
std::size_t size() const noexcept override
Gets the number of diseases model hosted.
Definition riskfactor.cpp:35
Defines the Simulation runtime context data type.
Definition runtime_context.h:22
Top-level namespace for Health-GPS Console host application.
Definition command_options.cpp:8
RiskFactorModelType
Health GPS risk factor module types enumeration.
Definition risk_factor_model.h:12
SimulationModuleType
Health GPS simulation modules types enumeration.
Definition interfaces.h:13
std::unique_ptr< RiskFactorModule > build_risk_factor_module(Repository &repository, const ModelInput &config)
Definition riskfactor.cpp:81
Global namespace.
Definition column_iterator.h:123