Health-GPS  1.2.2.0
Global Health Policy Simulation model (Health-GPS)
ses_noise_module.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "interfaces.h"
4 #include "modelinput.h"
5 #include "repository.h"
6 
7 namespace hgps {
8 
10 class SESNoiseModule final : public UpdatableModule {
11  public:
14 
18  SESNoiseModule(const std::vector<double> &parameters);
19 
24  SESNoiseModule(std::string function, const std::vector<double> &parameters);
25 
26  SimulationModuleType type() const noexcept override;
27 
28  const std::string &name() const noexcept override;
29 
30  void initialise_population(RuntimeContext &context) override;
31 
32  void update_population(RuntimeContext &context) override;
33 
34  private:
35  std::string function_;
36  std::vector<double> parameters_;
37  std::string name_{"SES"};
38 };
39 
45 std::unique_ptr<SESNoiseModule> build_ses_noise_module(Repository &repository,
46  const ModelInput &config);
47 } // namespace hgps
Defines the Simulation model inputs data type.
Definition: modelinput.h:43
Define the data repository interface for input datasets and back-end storage.
Definition: repository.h:18
Defines the Simulation runtime context data type.
Definition: runtime_context.h:21
Implements the socio-economic status (SES) module.
Definition: ses_noise_module.h:10
const std::string & name() const noexcept override
Gets the module name.
Definition: ses_noise_module.cpp:29
SESNoiseModule()
Initialise a new instance of the SESNoiseModule class.
Definition: ses_noise_module.cpp:9
void update_population(RuntimeContext &context) override
Updates the virtual population status.
Definition: ses_noise_module.cpp:37
SimulationModuleType type() const noexcept override
Gets the module type identifier.
Definition: ses_noise_module.cpp:27
void initialise_population(RuntimeContext &context) override
Initialises the virtual population.
Definition: ses_noise_module.cpp:31
Generic disease module interface to host multiple diseases model.
Definition: interfaces.h:71
Top-level namespace for Health-GPS C++ API.
Definition: analysis_definition.h:8
std::unique_ptr< SESNoiseModule > build_ses_noise_module([[maybe_unused]] Repository &repository, const ModelInput &config)
Definition: ses_noise_module.cpp:50
SimulationModuleType
Health GPS simulation modules types enumeration.
Definition: interfaces.h:11