Simpact Cyan
Population based event driven simulation using mNRM
eventtransmission.h
1 #ifndef EVENTTRANSMISSION_H
2 
3 #define EVENTTRANSMISSION_H
4 
5 #include "simpactevent.h"
6 
7 class ConfigSettings;
8 
9 class EventTransmission : public SimpactEvent
10 {
11 public:
12  // Transmission from person1 onto person2
13  EventTransmission(Person *pPerson1, Person *pPerson2);
14  ~EventTransmission();
15 
16  std::string getDescription(double tNow) const;
17  void writeLogs(double tNow) const;
18 
19  void fire(State *pState, double t);
20 
21  static void processConfig(ConfigSettings &config);
22  static void obtainConfig(ConfigWriter &config);
23 
24  // TODO: access functions
25  static double m_a;
26  static double m_b;
27  static double m_c;
28  static double m_d1;
29  static double m_d2;
30 protected:
31  double calculateInternalTimeInterval(const State *pState, double t0, double dt);
32  double solveForRealTimeInterval(const State *pState, double Tdiff, double t0);
33  bool isUseless();
34  double calculateHazardFactor();
35 };
36 
37 #endif // EVENTTRANSMISSION_H
38 
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