$treeview $search $mathjax
00001 #ifndef __TRADEMGEN_BAS_DEMAND_CHARACTERISTICS_HPP 00002 #define __TRADEMGEN_BAS_DEMAND_CHARACTERISTICS_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <string> 00009 // StdAir 00010 #include <stdair/stdair_basic_types.hpp> 00011 #include <stdair/stdair_date_time_types.hpp> 00012 #include <stdair/basic/StructAbstract.hpp> 00013 // TraDemGen 00014 #include <trademgen/basic/DemandCharacteristicsTypes.hpp> 00015 00016 namespace TRADEMGEN { 00017 00021 struct DemandCharacteristics : public stdair::StructAbstract { 00022 00023 public: 00024 // ////////////// Business support methods ////////// 00028 const stdair::AirportCode_T& 00029 getPOSValue (const stdair::Probability_T& iCumulativeProbability) const; 00030 00034 bool checkPOSValue (const stdair::AirportCode_T& iPOS) const; 00035 00036 00037 public: 00038 // ////////////// Display support methods ////////// 00042 const std::string describe() const; 00043 00044 00045 public: 00046 // ////////// Constructors and destructors ///////// 00050 DemandCharacteristics (const ArrivalPatternCumulativeDistribution_T&, 00051 const POSProbabilityMassFunction_T&, 00052 const ChannelProbabilityMassFunction_T&, 00053 const TripTypeProbabilityMassFunction_T&, 00054 const StayDurationProbabilityMassFunction_T&, 00055 const FrequentFlyerProbabilityMassFunction_T&, 00056 const stdair::ChangeFeesRatio_T&, 00057 const stdair::Disutility_T&, 00058 const stdair::NonRefundableRatio_T&, 00059 const stdair::Disutility_T&, 00060 const PreferredDepartureTimeContinuousDistribution_T&, 00061 const stdair::WTP_T&, 00062 const ValueOfTimeContinuousDistribution_T&); 00063 00067 DemandCharacteristics(); 00068 00072 DemandCharacteristics (const DemandCharacteristics&); 00073 00077 ~DemandCharacteristics(); 00078 00079 00080 public: 00081 // //////////////////// Attributes ///////////////////// 00087 ContinuousFloatDuration_T _arrivalPattern; 00088 00092 POSProbabilityMass_T _posProbabilityMass; 00093 00097 ChannelProbabilityMass_T _channelProbabilityMass; 00098 00102 TripTypeProbabilityMass_T _tripTypeProbabilityMass; 00103 00107 StayDurationProbabilityMass_T _stayDurationProbabilityMass; 00108 00112 FrequentFlyerProbabilityMass_T _frequentFlyerProbabilityMass; 00113 00117 stdair::ChangeFeesRatio_T _changeFeeProb; 00118 00122 stdair::Disutility_T _changeFeeDisutility; 00123 00127 stdair::NonRefundableRatio_T _nonRefundableProb; 00128 00132 stdair::Disutility_T _nonRefundableDisutility; 00133 00137 PreferredDepartureTimeCumulativeDistribution_T _preferredDepartureTimeCumulativeDistribution; 00138 00143 stdair::WTP_T _minWTP; 00144 00148 CumulativeDistribution_T _frat5Pattern; 00149 00153 ValueOfTimeCumulativeDistribution_T _valueOfTimeCumulativeDistribution; 00154 }; 00155 00156 } 00157 #endif // __TRADEMGEN_BAS_DEMAND_CHARACTERISTICS_HPP