42 virtual const
std::
string &
name() const noexcept = 0;
62 virtual std::size_t
size() const noexcept = 0;
77 : age{pop_age}, males{num_males}, females{num_females} {}
90 float total() const noexcept {
return males + females; }
105 virtual const core::Identifier &disease_type() const noexcept = 0;
122 virtual
double get_excess_mortality(const
Person &entity) const noexcept = 0;
Diseases model interface.
Definition interfaces.h:94
virtual core::DiseaseGroup group() const noexcept=0
Gets the disease group.
virtual ~DiseaseModel()=default
Destroys a DiseaseModel instance.
Generic risk factors module interface to host risk factor models.
Definition interfaces.h:58
virtual std::size_t size() const noexcept=0
Gets the number of diseases model hosted.
Defines the Simulation runtime context data type.
Definition runtime_context.h:22
Simulation modules interface.
Definition interfaces.h:31
virtual ~SimulationModule()=default
Destroys a SimulationModule instance.
virtual void initialise_population(RuntimeContext &context)=0
Initialises the virtual population.
virtual SimulationModuleType type() const noexcept=0
Gets the module type identifier.
virtual const std::string & name() const noexcept=0
Gets the module name.
Generic disease module interface to host multiple diseases model.
Definition interfaces.h:50
virtual void update_population(RuntimeContext &context)=0
Updates the virtual population status.
DiseaseGroup
Enumerates supported diseases types.
Definition forward_type.h:30
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
@ Demographic
Demographic module.
@ Analysis
Statistical analysis module, e.g. BoD module.
@ SES
Socio-economic status module.
@ RiskFactor
Risk factor module.
Global namespace.
Definition column_iterator.h:123
Defines the disease history data type.
Definition person.h:20
Defines a virtual population person data type.
Definition person.h:39
Define the population record data type for the demographic dataset.
Definition interfaces.h:71
float total() const noexcept
Gets the total number at age.
Definition interfaces.h:90
PopulationRecord(int pop_age, float num_males, float num_females)
Initialise a new instance of the PopulationRecord structure.
Definition interfaces.h:76