TraDemGen Logo  0.2.2
C++ Simulated Travel Demand Generation Library
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 PreferredDepartureTimeContinuousDistribution_T&,
00057                            const stdair::WTP_T&,
00058                            const ValueOfTimeContinuousDistribution_T&);
00059 
00063     DemandCharacteristics();
00064 
00068     DemandCharacteristics (const DemandCharacteristics&);
00069 
00073     ~DemandCharacteristics();
00074 
00075 
00076   public:
00077     // //////////////////// Attributes /////////////////////
00083     ContinuousFloatDuration_T _arrivalPattern;
00084 
00088     POSProbabilityMass_T _posProbabilityMass;
00089     
00093     ChannelProbabilityMass_T _channelProbabilityMass;
00094     
00098     TripTypeProbabilityMass_T _tripTypeProbabilityMass;
00099     
00103     StayDurationProbabilityMass_T _stayDurationProbabilityMass;
00104     
00108     FrequentFlyerProbabilityMass_T _frequentFlyerProbabilityMass;
00109 
00113     PreferredDepartureTimeCumulativeDistribution_T _preferredDepartureTimeCumulativeDistribution;
00114     
00119     stdair::WTP_T _minWTP;
00120 
00124     CumulativeDistribution_T _frat5Pattern;
00125 
00129     ValueOfTimeCumulativeDistribution_T _valueOfTimeCumulativeDistribution;
00130   };
00131 
00132 }
00133 #endif // __TRADEMGEN_BAS_DEMAND_CHARACTERISTICS_HPP