28 const std::vector<PolicyImpact> &sorted_impacts,
54 void clear() noexcept override;
57 const core::Identifier &risk_factor_key,
double value) override;
Thread-safe communication channel data type.
Definition: channel.h:24
Health-GPS scripted intervention policy scenario interface.
Definition: intervention_scenario.h:19
General purpose Random number generator algorithms.
Definition: random_algorithm.h:8
Defines the simple development intervention scenario.
Definition: simple_policy_scenario.h:43
void clear() noexcept override
Clear the scenario log book data.
Definition: simple_policy_scenario.cpp:16
double apply(Random &generator, Person &entity, int time, const core::Identifier &risk_factor_key, double value) override
Applies this Scenario to the Person instance.
Definition: simple_policy_scenario.cpp:30
SyncChannel & channel() override
Gets the Scenario communication channel.
Definition: simple_policy_scenario.cpp:14
SimplePolicyScenario()=delete
const PolicyInterval & active_period() const noexcept override
Gets the intervention active period.
Definition: simple_policy_scenario.cpp:22
const std::vector< PolicyImpact > & impacts() const noexcept override
Gets the intervention impacts by risk factor and age range.
Definition: simple_policy_scenario.cpp:26
const PolicyImpactType & impact_type() const noexcept
Definition: simple_policy_scenario.cpp:18
Top-level namespace for Health-GPS C++ API.
Definition: analysis_definition.h:8
PolicyImpactType
Health GPS policy impact types enumeration.
Definition: simple_policy_scenario.h:12
@ relative
Relative impact.
@ absolute
Absolute impact.
Global namespace.
Definition: jsonparser.h:88
Defines a virtual population person data type.
Definition: person.h:40
Defines the policy impact on risk factors data structure.
Definition: intervention_scenario.h:49
Defines the policy active interval.
Definition: intervention_scenario.h:97
Simple intervention policy definition data type.
Definition: simple_policy_scenario.h:21
PolicyImpactType impact_type
Intervention impact type.
Definition: simple_policy_scenario.h:33
SimplePolicyDefinition()=delete
SimplePolicyDefinition(const PolicyImpactType &type_of_impact, const std::vector< PolicyImpact > &sorted_impacts, const PolicyInterval &period)
Initialise a new instance of the SimplePolicyDefinition structure.
Definition: simple_policy_scenario.h:27
PolicyInterval active_period
Active implementation period.
Definition: simple_policy_scenario.h:39
std::vector< PolicyImpact > impacts
Intervention impacts on risk factors.
Definition: simple_policy_scenario.h:36