Health-GPS  1.2.2.0
Global Health Policy Simulation model (Health-GPS)
hgps::SimplePolicyScenario Class Referencefinal

Defines the simple development intervention scenario. More...

#include <simple_policy_scenario.h>

Inheritance diagram for hgps::SimplePolicyScenario:
[legend]
Collaboration diagram for hgps::SimplePolicyScenario:
[legend]

Public Member Functions

 SimplePolicyScenario ()=delete
 
 SimplePolicyScenario (SyncChannel &data_sync, SimplePolicyDefinition &&definition)
 Initialises a new instance of the SimplePolicyScenario class. More...
 
SyncChannelchannel () 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 PolicyImpactTypeimpact_type () const noexcept
 
const PolicyIntervalactive_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...
 
- Public Member Functions inherited from hgps::InterventionScenario
ScenarioType type () const noexcept override
 Gets the scenario type identifier. More...
 
const std::string & name () const noexcept override
 Gets the scenario type name. More...
 
- Public Member Functions inherited from hgps::Scenario
virtual ~Scenario ()=default
 Destroys a Scenario instance. More...
 

Detailed Description

Defines the simple development intervention scenario.

Constructor & Destructor Documentation

◆ SimplePolicyScenario() [1/2]

hgps::SimplePolicyScenario::SimplePolicyScenario ( )
delete

◆ SimplePolicyScenario() [2/2]

hgps::SimplePolicyScenario::SimplePolicyScenario ( SyncChannel data_sync,
SimplePolicyDefinition &&  definition 
)

Initialises a new instance of the SimplePolicyScenario class.

Parameters
data_syncThe data synchronisation channel instance to use.
definitionThe intervention definition

Member Function Documentation

◆ active_period()

const PolicyInterval & hgps::SimplePolicyScenario::active_period ( ) const
overridevirtualnoexcept

Gets the intervention active period.

Returns
Intervention period

Implements hgps::InterventionScenario.

◆ apply()

double hgps::SimplePolicyScenario::apply ( Random generator,
Person entity,
int  time,
const core::Identifier risk_factor_key,
double  value 
)
overridevirtual

Applies this Scenario to the Person instance.

Parameters
generatorRandom number generator instance
entityPerson instance to apply
timeCurrent simulation time
risk_factor_keyTarget risk factor identifier
valueCurrent risk factor value
Returns
The risk factor new value

Implements hgps::Scenario.

Here is the call graph for this function:

◆ channel()

SyncChannel & hgps::SimplePolicyScenario::channel ( )
overridevirtual

Gets the Scenario communication channel.

Returns
The communication channel

Implements hgps::Scenario.

◆ clear()

void hgps::SimplePolicyScenario::clear ( )
overridevirtualnoexcept

Clear the scenario log book data.

Implements hgps::Scenario.

◆ impact_type()

const PolicyImpactType & hgps::SimplePolicyScenario::impact_type ( ) const
noexcept

◆ impacts()

const std::vector< PolicyImpact > & hgps::SimplePolicyScenario::impacts ( ) const
overridevirtualnoexcept

Gets the intervention impacts by risk factor and age range.

Returns
Intervention impact on risk factors

Implements hgps::InterventionScenario.


The documentation for this class was generated from the following files: