TvlSim Logo  1.00.0
C++ Simulated Travel-Oriented Distribution System Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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  class SimulationStatus;
35 
37  class Simulator : public CmdAbstract {
38  friend class TVLSIM_Service;
39  private:
40 
42  static void simulate(SIMCRS::SIMCRS_Service&, TRADEMGEN::TRADEMGEN_Service&,
43  TRAVELCCM::TRAVELCCM_Service&,stdair::STDAIR_Service&,
45  const stdair::DemandGenerationMethod&);
46 
48  static void updateStatus(const TRADEMGEN::TRADEMGEN_Service&,
49  const stdair::EventType::EN_EventType&,
51  const double& iEventMeasure = 0);
52 
54  static void playBookingRequest (SIMCRS::SIMCRS_Service&,
55  TRADEMGEN::TRADEMGEN_Service&,
56  TRAVELCCM::TRAVELCCM_Service&,
57  const stdair::EventStruct&,
58  stdair::ProgressStatusSet&,
60  const stdair::DemandGenerationMethod&);
61 
63  static void playCancellation (SIMCRS::SIMCRS_Service&,
64  const stdair::EventStruct&);
65 
67  static void playSnapshotEvent (SIMCRS::SIMCRS_Service&,
68  const stdair::EventStruct&);
69 
70 
72  static void playRMEvent (SIMCRS::SIMCRS_Service&,
73  const stdair::EventStruct&);
74 
76  static const stdair::Count_T initialiseBreakPoint (const TRADEMGEN::TRADEMGEN_Service&,
77  SEVMGR::SEVMGR_Service&,
78  const stdair::BreakPointList_T&,
80 
81  private:
83  Simulator() {}
84  Simulator(const Simulator&) {}
86  ~Simulator() {}
87  };
88 
89 }
90 #endif // __TVLSIM_CMD_SIMULATOR_HPP