TvlSim Logo  1.01.6
C++ Simulated Travel-Oriented Distribution System Library
Simulator.hpp
Go to the documentation of this file.
1 #ifndef __TVLSIM_CMD_SIMULATOR_HPP
2 #define __TVLSIM_CMD_SIMULATOR_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // StdAir
8 #include <stdair/basic/DemandGenerationMethod.hpp>
9 #include <stdair/bom/EventStruct.hpp>
10 // TVLSIM
12 
13 // Forward declarations
14 namespace stdair {
15  class STDAIR_Service;
16  struct EventStruct;
17  struct ProgressStatusSet;
18 }
19 namespace SIMCRS {
20  class SIMCRS_Service;
21 }
22 namespace TRADEMGEN {
23  class TRADEMGEN_Service;
24 }
25 namespace TRAVELCCM {
26  class TRAVELCCM_Service;
27 }
28 namespace SEVMGR {
29  class SEVMGR_Service;
30 }
31 
32 namespace TVLSIM {
33 
34  struct SimulationStatus;
35 
39  class Simulator : public CmdAbstract {
40  friend class TVLSIM_Service;
41  private:
42 
46  static void simulate(SIMCRS::SIMCRS_Service&, TRADEMGEN::TRADEMGEN_Service&,
47  TRAVELCCM::TRAVELCCM_Service&,stdair::STDAIR_Service&,
49  const stdair::DemandGenerationMethod&);
50 
54  static void updateStatus(const TRADEMGEN::TRADEMGEN_Service&,
55  const stdair::EventType::EN_EventType&,
57  const double& iEventMeasure = 0);
58 
62  static void playBookingRequest (SIMCRS::SIMCRS_Service&,
63  TRADEMGEN::TRADEMGEN_Service&,
64  TRAVELCCM::TRAVELCCM_Service&,
65  const stdair::EventStruct&,
66  stdair::ProgressStatusSet&,
68  const stdair::DemandGenerationMethod&);
69 
73  static void playCancellation (SIMCRS::SIMCRS_Service&,
74  const stdair::EventStruct&);
75 
79  static void playSnapshotEvent (SIMCRS::SIMCRS_Service&,
80  const stdair::EventStruct&);
81 
82 
86  static void playRMEvent (SIMCRS::SIMCRS_Service&,
87  const stdair::EventStruct&);
88 
92  static const stdair::Count_T
93  initialiseBreakPoint (const TRADEMGEN::TRADEMGEN_Service&,
94  SEVMGR::SEVMGR_Service&,
95  const stdair::BreakPointList_T&,
97 
98  private:
102  Simulator() {}
103 
107  Simulator(const Simulator&) {}
108 
112  ~Simulator() {}
113  };
114 
115 }
116 #endif // __TVLSIM_CMD_SIMULATOR_HPP