Simpact Cyan
Population based event driven simulation using mNRM
evthazard.h
1 #ifndef EVTHAZARD_H
2 
3 #define EVTHAZARD_H
4 
5 class SimpactPopulation;
6 class SimpactEvent;
7 class ConfigWriter;
8 
9 // WARNING: the same instance can be called from multiple threads
10 class EvtHazard
11 {
12 public:
13  EvtHazard() { }
14  virtual ~EvtHazard() { }
15 
16  virtual double calculateInternalTimeInterval(const SimpactPopulation &population,
17  const SimpactEvent &evt, double t0, double dt) = 0;
18  virtual double solveForRealTimeInterval(const SimpactPopulation &population,
19  const SimpactEvent &evt, double Tdiff, double t0) = 0;
20 
21  virtual void obtainConfig(ConfigWriter &config) = 0;
22 };
23 
24 #endif // EVTHAZARD_H
25