TraDemGen Logo  1.00.0
C++ Simulated Travel Demand Generation Library
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
DemandStruct.hpp
Go to the documentation of this file.
1 #ifndef __TRADEMGEN_BOM_DEMANDSTRUCT_HPP
2 #define __TRADEMGEN_BOM_DEMANDSTRUCT_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <string>
9 // StdAir
10 #include <stdair/stdair_basic_types.hpp>
11 #include <stdair/stdair_maths_types.hpp>
12 #include <stdair/stdair_date_time_types.hpp>
13 #include <stdair/basic/StructAbstract.hpp>
14 #include <stdair/bom/DoWStruct.hpp>
15 // TraDemGen
17 
18 namespace TRADEMGEN {
19 
21  struct DemandStruct : public stdair::StructAbstract {
22 
23  public:
24  // /////////////////// Getters ////////////////////
26  stdair::Date_T getDate() const;
27 
29  stdair::Duration_T getTime() const;
30 
31 
32  public:
33  // ////////////////// Display Support Methods ////////////////
35  const std::string describe() const;
36 
37 
38  public:
39  // /////////////// Constructors and destructors ///////////////
41  DemandStruct();
43  ~DemandStruct();
44  private:
46  DemandStruct (const DemandStruct&);
47 
48 
49  public:
50  // ////////////// Attributes ///////////////////
51  stdair::DatePeriod_T _dateRange;
52  stdair::DoWStruct _dow;
53  stdair::AirportCode_T _origin;
54  stdair::AirportCode_T _destination;
55  stdair::CabinCode_T _prefCabin;
56  stdair::MeanValue_T _demandMean;
57  stdair::StdDevValue_T _demandStdDev;
58  stdair::ChangeFeesRatio_T _changeFeeProb;
59  stdair::Disutility_T _changeFeeDisutility;
60  stdair::NonRefundableRatio_T _nonRefundableProb;
61  stdair::Disutility_T _nonRefundableDisutility;
68  stdair::WTP_T _minWTP;
71 
72  public:
73  // ////////////// Staging ///////////////////
75  stdair::Date_T _prefDepDateStart;
76  stdair::Date_T _prefDepDateEnd;
77  unsigned int _itYear;
78  unsigned int _itMonth;
79  unsigned int _itDay;
80 
82  long _itHours;
83  long _itMinutes;
84  long _itSeconds;
85 
87  stdair::AirportCode_T _itPosCode;
88 
90  stdair::ChannelLabel_T _itChannelCode;
91 
93  stdair::TripType_T _itTripCode;
94 
96  stdair::DayDuration_T _itStayDuration;
97 
99  stdair::FrequentFlyer_T _itFFCode;
100 
102  stdair::Duration_T _itPrefDepTime;
103 
105  stdair::PriceValue_T _itTimeValue;
106 
108  stdair::DayDuration_T _itDTD;
109  };
110 
111 }
112 #endif // __TRADEMGEN_BOM_DEMANDSTRUCT_HPP