Health-GPS
1.2.2.0
Global Health Policy Simulation model (Health-GPS)
|
Implements the marketing regulation intervention scenario. More...
#include <marketing_scenario.h>
Public Member Functions | |
MarketingPolicyScenario ()=delete | |
MarketingPolicyScenario (SyncChannel &data_sync, MarketingPolicyDefinition &&definition) | |
Initialises a new instance of the MarketingDynamicScenario class. More... | |
SyncChannel & | channel () override |
Gets the Scenario communication channel. More... | |
void | clear () noexcept override |
Clear the scenario log book data. More... | |
double | apply (Random &generator, Person &entity, int time, const core::Identifier &risk_factor_key, double value) override |
Applies this Scenario to the Person instance. More... | |
const PolicyInterval & | active_period () const noexcept override |
Gets the intervention active period. More... | |
const std::vector< PolicyImpact > & | impacts () const noexcept override |
Gets the intervention impacts by risk factor and age range. More... | |
![]() | |
ScenarioType | type () const noexcept override |
Gets the scenario type identifier. More... | |
const std::string & | name () const noexcept override |
Gets the scenario type name. More... | |
![]() | |
virtual | ~Scenario ()=default |
Destroys a Scenario instance. More... | |
Implements the marketing regulation intervention scenario.
This is the initial implementation of the marketing regulation before the dynamic component has been added.
|
delete |
hgps::MarketingPolicyScenario::MarketingPolicyScenario | ( | SyncChannel & | data_sync, |
MarketingPolicyDefinition && | definition | ||
) |
Initialises a new instance of the MarketingDynamicScenario class.
data_sync | The data synchronisation channel instance to use. |
definition | The intervention definition |
std::invalid_argument | number of impact levels mismatch. |
std::out_of_range | for overlapping or non-ordered impact levels. |
|
overridevirtualnoexcept |
Gets the intervention active period.
Implements hgps::InterventionScenario.
|
overridevirtual |
Applies this Scenario to the Person instance.
generator | Random number generator instance |
entity | Person instance to apply |
time | Current simulation time |
risk_factor_key | Target risk factor identifier |
value | Current risk factor value |
Implements hgps::Scenario.
|
overridevirtual |
Gets the Scenario communication channel.
Implements hgps::Scenario.
|
overridevirtualnoexcept |
Clear the scenario log book data.
Implements hgps::Scenario.
|
overridevirtualnoexcept |
Gets the intervention impacts by risk factor and age range.
Implements hgps::InterventionScenario.