1 #ifndef __SIMCRS_SVC_SIMCRS_SERVICE_HPP
2 #define __SIMCRS_SVC_SIMCRS_SERVICE_HPP
8 #include <stdair/stdair_basic_types.hpp>
9 #include <stdair/stdair_file.hpp>
10 #include <stdair/stdair_service_types.hpp>
11 #include <stdair/bom/TravelSolutionTypes.hpp>
13 #include <sevmgr/SEVMGR_Types.hpp>
15 #include <simfqt/SIMFQT_Types.hpp>
17 #include <airrac/AIRRAC_Types.hpp>
26 struct BookingRequestStruct;
27 struct CancellationStruct;
28 struct SnapshotStruct;
36 class SIMCRS_ServiceContext;
61 SIMCRS_Service (
const stdair::BasLogParams&,
const stdair::BasDBParams&,
96 SIMCRS_Service (stdair::STDAIR_ServicePtr_T, SEVMGR::SEVMGR_ServicePtr_T,
114 const stdair::ODFilePath&,
115 const stdair::FRAT5FilePath&,
116 const stdair::FFDisutilityFilePath&,
117 const AIRRAC::YieldFilePath&,
118 const SIMFQT::FareFilePath&);
127 const stdair::Date_T& iEndDate);
141 stdair::TravelSolutionList_T
147 void fareQuote (
const stdair::BookingRequestStruct&,
148 stdair::TravelSolutionList_T&);
158 bool sell (
const stdair::TravelSolutionStruct&,
const stdair::PartySize_T&);
173 void optimise (
const stdair::RMEventStruct&);
183 bool sell (
const std::string& iSegmentDateKey,
const stdair::ClassCode_T&,
184 const stdair::PartySize_T&);
259 stdair::BookingRequestStruct
274 std::string
jsonHandler (
const stdair::JSONString&)
const;
294 std::string
csvDisplay (
const stdair::TravelSolutionList_T&)
const;
309 std::string
list (
const stdair::AirlineCode_T& iAirlineCode =
"all",
310 const stdair::FlightNumber_T& iFlightNumber = 0)
const;
323 std::string
csvDisplay (
const stdair::AirlineCode_T&,
324 const stdair::FlightNumber_T&,
325 const stdair::Date_T& iDepartureDate)
const;
349 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&,
350 const stdair::BasDBParams&);
361 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&);
366 void initAIRSCHEDService();
371 void initSIMFQTService();
376 void initAIRINVService();
386 void addStdAirService (stdair::STDAIR_ServicePtr_T,
387 const bool iOwnStdairService);
394 void addSEVMGRService (SEVMGR::SEVMGR_ServicePtr_T,
395 const bool iOwnSEVMGRService);
403 void initServiceContext (
const CRSCode_T&);
409 void initSimcrsService();
425 #endif // __SIMCRS_SVC_SIMCRS_SERVICE_HPP