RMOL Logo  1.00.0
C++ library of Revenue Management and Optimisation classes and functions
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
HistoricalBookingHolder.hpp
Go to the documentation of this file.
1 #ifndef __RMOL_BOM_HISTORICALBOOKINGHOLDER_HPP
2 #define __RMOL_BOM_HISTORICALBOOKINGHOLDER_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iostream>
9 #include <vector>
10 // StdAir
11 #include <stdair/stdair_basic_types.hpp>
12 #include <stdair/basic/StructAbstract.hpp>
13 
14 namespace RMOL {
17 
19  typedef std::vector<HistoricalBooking> HistoricalBookingVector_T;
20 
23  struct HistoricalBookingHolder : public stdair::StructAbstract {
24 
25  public:
26  // ////// Getters //////
28  const short getNbOfFlights () const;
29 
31  const short getNbOfUncensoredData () const;
32 
34  const stdair::NbOfBookings_T getNbOfUncensoredBookings () const;
35 
38  (const double& iMeanOfUncensoredBookings,
39  const short iNbOfUncensoredData) const;
40 
42  const double getDemandMean () const;
43 
45  const double getStandardDeviation (const double) const;
46 
48  const std::vector<bool> getListOfToBeUnconstrainedFlags() const;
49 
51  const stdair::NbOfBookings_T& getHistoricalBooking (const short i) const;
52 
54  const stdair::NbOfBookings_T& getUnconstrainedDemand (const short i) const;
55 
57  const stdair::Flag_T& getCensorshipFlag (const short i) const;
58 
60  const stdair::NbOfBookings_T& getUnconstrainedDemandOnFirstElement() const {
61  return getUnconstrainedDemand (0);
62  }
63 
65  const stdair::NbOfBookings_T calculateExpectedDemand (const double,
66  const double,
67  const short,
68  const stdair::NbOfBookings_T) const;
69 
71  void setUnconstrainedDemand (const stdair::NbOfBookings_T& iExpectedDemand,
72  const short i);
73 
75  void addHistoricalBooking (const HistoricalBooking& iHistoricalBooking);
76 
80  void toStream (std::ostream& ioOut) const;
81 
82  // ///////// Display Methods //////////
84  const std::string describe() const;
85 
87  void display () const;
88 
90  virtual ~HistoricalBookingHolder();
91 
92  public:
96 
97  private:
99  HistoricalBookingVector_T _historicalBookingVector;
100 
101  protected:
102  };
103 }
104 #endif // __RMOL_BOM_HISTORICALBOOKINGHOLDER_HPP
105