1 #ifndef __AIRINV_SVC_AIRINV_SERVICE_HPP
2 #define __AIRINV_SVC_AIRINV_SERVICE_HPP
10 #include <stdair/stdair_basic_types.hpp>
11 #include <stdair/stdair_service_types.hpp>
12 #include <stdair/basic/ForecastingMethod.hpp>
13 #include <stdair/basic/PartnershipTechnique.hpp>
14 #include <stdair/bom/RMEventTypes.hpp>
16 #include <airrac/AIRRAC_Types.hpp>
20 class AirlineFeatureSet;
23 struct TravelSolutionStruct;
31 class AIRINV_ServiceContext;
55 AIRINV_Service (
const stdair::BasLogParams&,
const stdair::BasDBParams&);
96 void parseAndLoad (
const stdair::Filename_T& iInventoryFilename);
108 void parseAndLoad (
const stdair::Filename_T& iScheduleFilename,
109 const stdair::Filename_T& iODInputFilename,
110 const AIRRAC::YieldFilePath& iYieldFilename);
134 stdair::RMEventList_T
initRMEvents (
const stdair::Date_T& iStartDate,
135 const stdair::Date_T& iEndDate);
141 const stdair::PartnershipTechnique&);
151 bool sell (
const std::string& iSegmentDateKey,
const stdair::ClassCode_T&,
152 const stdair::PartySize_T&);
163 bool cancel (
const std::string& iSegmentDateKey,
const stdair::ClassCode_T&,
164 const stdair::PartySize_T&);
170 const stdair::DateTime_T&);
175 void optimise (
const stdair::AirlineCode_T&,
176 const stdair::KeyDescription_T&,
177 const stdair::DateTime_T&,
178 const stdair::ForecastingMethod&,
179 const stdair::PartnershipTechnique&);
193 std::string
jsonExport (
const stdair::AirlineCode_T&,
194 const stdair::FlightNumber_T&,
195 const stdair::Date_T& iDepartureDate)
const;
212 std::string
list (
const stdair::AirlineCode_T& iAirlineCode =
"all",
213 const stdair::FlightNumber_T& iFlightNumber = 0)
const;
224 bool check (
const stdair::AirlineCode_T&,
const stdair::FlightNumber_T&,
225 const stdair::Date_T& iDepartureDate)
const;
247 std::string
csvDisplay (
const stdair::AirlineCode_T&,
248 const stdair::FlightNumber_T&,
249 const stdair::Date_T& iDepartureDate)
const;
273 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&,
274 const stdair::BasDBParams&);
284 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&);
289 void initRMOLService();
294 void initAIRRACService();
304 void addStdAirService (stdair::STDAIR_ServicePtr_T,
305 const bool iOwnStdairService);
311 void initServiceContext();
319 void initAirinvService();
335 #endif // __AIRINV_SVC_AIRINV_SERVICE_HPP