Simpact Cyan
Population based event driven simulation using mNRM
eventtreatment.h
1 #ifndef EVENTTREATMENT_H
2 
3 #define EVENTTREATMENT_H
4 
5 #include "simpactevent.h"
6 
7 class ConfigSettings;
8 
9 class EventTreatment : public SimpactEvent
10 {
11 public:
12  EventTreatment(Person *pPerson);
13  ~EventTreatment();
14 
15  std::string getDescription(double tNow) const;
16  void writeLogs(double tNow) const;
17 
18  void fire(State *pState, double t);
19 
20  static void processConfig(ConfigSettings &config);
21  static void obtainConfig(ConfigWriter &config);
22 
23  static bool isTreatmentEnabled() { return treatmentEnabled; }
24 private:
25  double getNewInternalTimeDifference(GslRandomNumberGenerator *pRndGen, const State *pState);
26 
27  static double treatmentTimeFrac;
28  static double treatmentVLLogFrac;
29  static bool treatmentEnabled;
30 };
31 
32 #endif // EVENTTREATMENT_H
This class both describes the simulation state and contains the core algorithm (as shown on the main ...
Definition: state.h:40
Helper class to read configuration settings, more advanced than ConfigReader.
Definition: configsettings.h:20
This class allows you to generate random numbers, and uses the GNU Scientific Library for this...
Definition: gslrandomnumbergenerator.h:16