Health-GPS
3.0.0.0
Global Health Policy Simulation model (Health-GPS)
Loading...
Searching...
No Matches
risk_factor_model.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <cstdint>
4
#include <memory>
5
#include <string>
6
7
#include "
runtime_context.h
"
8
9
namespace
hgps
{
10
12
enum class
RiskFactorModelType
: uint8_t {
14
Static
,
15
17
Dynamic
,
18
};
19
21
class
RiskFactorModel
{
22
public
:
24
virtual
~RiskFactorModel
() =
default
;
25
28
virtual
RiskFactorModelType
type
() const noexcept = 0;
29
32
virtual
std
::
string
name
() const noexcept = 0;
33
36
virtual
void
generate_risk_factors
(
RuntimeContext
&context) = 0;
37
40
virtual
void
update_risk_factors
(
RuntimeContext
&context) = 0;
41
};
42
44
class
RiskFactorModelDefinition
{
45
public
:
47
virtual
~RiskFactorModelDefinition
() =
default
;
48
50
virtual
std::unique_ptr<RiskFactorModel>
create_model
()
const
= 0;
51
};
52
53
}
// namespace hgps
hgps::RiskFactorModelDefinition
Risk factor model definition interface.
Definition
risk_factor_model.h:44
hgps::RiskFactorModelDefinition::~RiskFactorModelDefinition
virtual ~RiskFactorModelDefinition()=default
Destroys a RiskFactorModelDefinition instance.
hgps::RiskFactorModelDefinition::create_model
virtual std::unique_ptr< RiskFactorModel > create_model() const =0
Creates a new risk factor model from this definition.
hgps::RiskFactorModel
Risk factor model interface.
Definition
risk_factor_model.h:21
hgps::RiskFactorModel::name
virtual std::string name() const noexcept=0
Gets the model name.
hgps::RiskFactorModel::update_risk_factors
virtual void update_risk_factors(RuntimeContext &context)=0
Update risk factors for population.
hgps::RiskFactorModel::~RiskFactorModel
virtual ~RiskFactorModel()=default
Destroys a RiskFactorModel instance.
hgps::RiskFactorModel::generate_risk_factors
virtual void generate_risk_factors(RuntimeContext &context)=0
Generates the initial risk factors for a population and newborns.
hgps::RiskFactorModel::type
virtual RiskFactorModelType type() const noexcept=0
Gets the model type identifier.
hgps::RuntimeContext
Defines the Simulation runtime context data type.
Definition
runtime_context.h:22
hgps
Top-level namespace for Health-GPS Console host application.
Definition
command_options.cpp:8
hgps::RiskFactorModelType
RiskFactorModelType
Health GPS risk factor module types enumeration.
Definition
risk_factor_model.h:12
hgps::RiskFactorModelType::Static
@ Static
Static model.
hgps::RiskFactorModelType::Dynamic
@ Dynamic
Dynamic model.
std
Global namespace.
Definition
column_iterator.h:123
runtime_context.h
HealthGPS
risk_factor_model.h
Generated by
1.9.8