$treeview $search $mathjax
TraDemGen Logo  1.00.0
$projectbrief
$projectbrief
$searchbox

DemandCharacteristics.hpp

Go to the documentation of this file.
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