RMOL Logo  0.25.3
C++ library of Revenue Management and Optimisation classes and functions
 All Classes Namespaces Files Functions Variables Typedefs Friends Macros Pages
Forecaster.hpp
Go to the documentation of this file.
1 #ifndef __RMOL_COMMAND_FORECASTER_HPP
2 #define __RMOL_COMMAND_FORECASTER_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <map>
9 // StdAir
10 #include <stdair/stdair_inventory_types.hpp>
11 // RMOL
12 #include <rmol/RMOL_Types.hpp>
13 
14 // Forward declarations
15 namespace stdair {
16  class FlightDate;
17  class SegmentCabin;
18  class GuillotineBlock;
19 }
20 
21 namespace RMOL {
23  class Forecaster {
24  public:
28  static bool forecastUsingAdditivePickUp (stdair::FlightDate&,
29  const stdair::DateTime_T&);
30 
34  static bool forecastUsingMultiplicativePickUp (stdair::FlightDate&,
35  const stdair::DateTime_T&);
36 
37 
38  private:
42  static bool forecastUsingAdditivePickUp (stdair::SegmentCabin&,
43  const stdair::DCPList_T&,
44  const stdair::Date_T&);
45 
50  static void forecastUsingAdditivePickUp (stdair::SegmentCabin&,
52 
56  static bool forecastUsingMultiplicativePickUp (stdair::SegmentCabin&,
57  const stdair::Date_T&,
58  const stdair::DTD_T&);
62  static void forecastUsingMultiplicativePickUp(const stdair::SegmentCabin&,
65  const stdair::DCP_T&,
66  const stdair::DCP_T&,
67  const stdair::Date_T&,
68  const stdair::NbOfSegments_T&,
69  const stdair::NbOfSegments_T&);
70 
74  static void forecastUsingMultiplicativePickUp(const stdair::GuillotineBlock&,
76  const stdair::DCP_T&,
77  const stdair::DCP_T&,
78  const stdair::NbOfSegments_T&,
79  const stdair::BlockIndex_T&,
80  const stdair::NbOfSegments_T&,
81  const stdair::NbOfSegments_T&);
82 
86  static void forecastUsingMultiplicativePickUp(const stdair::GuillotineBlock&,
88  const stdair::DCP_T&,
89  const stdair::DCP_T&,
90  const stdair::NbOfSegments_T&,
91  const stdair::BlockIndex_T&,
92  const stdair::NbOfSegments_T&,
93  const stdair::NbOfSegments_T&,
94  const stdair::SegmentCabin&,
95  const stdair::Date_T&);
96 
101  static bool forecastUsingMultiplicativePickUp(stdair::SegmentCabin&,
103  const stdair::NbOfRequests_T&,
104  const double&);
105 
109  static void setRemainingDemandForecastToZero (const stdair::SegmentCabin&);
110  };
111 }
112 #endif // __RMOL_COMMAND_FORECASTER_HPP