1 #ifndef __AIRINV_CMD_INVENTORYMANAGER_HPP
2 #define __AIRINV_CMD_INVENTORYMANAGER_HPP
10 #include <stdair/stdair_basic_types.hpp>
11 #include <stdair/bom/RMEventTypes.hpp>
12 #include <stdair/bom/BomIDTypes.hpp>
14 #include <sevmgr/SEVMGR_Types.hpp>
24 struct TravelSolutionStruct;
30 typedef std::map<
const stdair::Date_T,
32 typedef std::map<
const std::string,
42 static void initSnapshotEvents (SEVMGR::SEVMGR_ServicePtr_T,
43 const stdair::Date_T&,
44 const stdair::Date_T&);
47 static void initRMEvents (
const stdair::Inventory&, stdair::RMEventList_T&,
48 const stdair::Date_T&,
const stdair::Date_T&);
51 static void addRMEventsToEventQueue (SEVMGR::SEVMGR_ServicePtr_T,
52 stdair::RMEventList_T&);
55 static void calculateAvailability (
const stdair::BomRoot&,
56 stdair::TravelSolutionStruct&);
59 static void calculateAvailabilityByAU (stdair::TravelSolutionStruct&);
62 static void calculateAvailabilityByRAE (stdair::TravelSolutionStruct&);
68 static void calculateAvailabilityByIBP (stdair::TravelSolutionStruct&);
76 static void calculateAvailabilityByProtectiveIBP (stdair::TravelSolutionStruct&);
79 static bool sell (stdair::Inventory&,
const std::string& iSegmentDateKey,
80 const stdair::ClassCode_T&,
const stdair::PartySize_T&);
83 static bool sell (
const stdair::BookingClassID_T&,
84 const stdair::PartySize_T&);
87 static bool cancel (stdair::Inventory&,
const std::string& iSegmentDateKey,
88 const stdair::ClassCode_T&,
const stdair::PartySize_T&);
91 static bool cancel (
const stdair::BookingClassID_T&,
92 const stdair::PartySize_T&);
95 static void takeSnapshots (
const stdair::Inventory&,
96 const stdair::DateTime_T&);
99 static void updateBookingControls (stdair::FlightDate&);
102 static void recalculateAvailability (stdair::FlightDate&);
111 stdair::Inventory&, stdair::FlightDate&);
120 stdair::Inventory&, stdair::FlightDate&);
128 const stdair::TableID_T&,
129 const DepartureDateSegmentCabinMap_T&);
147 ~InventoryManager() {}
151 #endif // __AIRINV_CMD_INVENTORYMANAGER_HPP
static void createDirectAccesses(const stdair::BomRoot &)
std::map< const stdair::Date_T, stdair::SegmentCabin * > DepartureDateSegmentCabinMap_T
static void createPartnerAccesses(const stdair::BomRoot &, stdair::Inventory &)
std::map< const std::string, DepartureDateSegmentCabinMap_T > SimilarSegmentCabinSetMap_T
static void buildSegmentSnapshotTable(stdair::Inventory &, const stdair::TableID_T &, const DepartureDateSegmentCabinMap_T &)
Interface for the AIRINV Services.
Interface for the AIRINV Services.
static void setDefaultBidPriceVector(stdair::BomRoot &)
static void buildSimilarSegmentCabinSets(const stdair::BomRoot &)
static void initialiseListsOfUsablePolicies(const stdair::BomRoot &)
static void initialiseYieldBasedNestingStructures(const stdair::BomRoot &)