StdAir Logo  0.45.1
C++ Standard Airline IT Object Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BookingRequestStruct.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_BOM_BOOKINGREQUESTSTRUCT_HPP
2 #define __STDAIR_BOM_BOOKINGREQUESTSTRUCT_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iosfwd>
9 #include <string>
10 // StdAir
15 
16 namespace stdair {
17 
22  public:
23  // /////////////// Getters /////////////////
26  return _generatorKey;
27  }
28 
30  const AirportCode_T& getOrigin() const {
31  return _origin;
32  }
33 
35  const AirportCode_T& getDestination() const {
36  return _destination;
37  }
38 
40  const CityCode_T& getPOS() const {
41  return _pos;
42  }
43 
46  return _preferredDepartureDate;
47  }
48 
51  return _preferredDepartureTime;
52  }
53 
55  const DateTime_T& getRequestDateTime() const {
56  return _requestDateTime;
57  }
58 
60  const CabinCode_T& getPreferredCabin() const {
61  return _preferredCabin;
62  }
63 
65  const NbOfSeats_T& getPartySize() const {
66  return _partySize;
67  }
68 
71  return _channel;
72  }
73 
75  const TripType_T& getTripType() const {
76  return _tripType;
77  }
78 
80  const DayDuration_T& getStayDuration() const {
81  return _stayDuration;
82  }
83 
86  return _frequentFlyerType;
87  }
88 
90  const WTP_T& getWTP() const {
91  return _wtp;
92  }
93 
95  const PriceValue_T& getValueOfTime () const {
96  return _valueOfTime;
97  }
98 
99 
100  public:
101  // /////////// Display support method /////////////
106  void toStream (std::ostream& ioOut) const;
107 
112  void fromStream (std::istream& ioIn);
113 
117  const std::string describe() const;
118 
169  const std::string display() const;
170 
171 
172  public:
173  // /////////////// Constructors and Destructors /////////////////
177  BookingRequestStruct (const DemandGeneratorKey_T& iGeneratorKey,
178  const AirportCode_T& iOrigin,
179  const AirportCode_T& iDestination,
180  const CityCode_T& iPOS,
181  const Date_T& iDepartureDate,
182  const DateTime_T& iRequestDateTime,
183  const CabinCode_T& iPreferredCabin,
184  const NbOfSeats_T& iPartySize,
185  const ChannelLabel_T& iChannel,
186  const TripType_T& iTripType,
187  const DayDuration_T& iStayDuration,
188  const FrequentFlyer_T& iFrequentFlyerType,
189  const Duration_T& iPreferredDepartureTime,
190  const WTP_T& iWTP,
191  const PriceValue_T& iValueOfTime);
192 
196  BookingRequestStruct (const AirportCode_T& iOrigin,
197  const AirportCode_T& iDestination,
198  const CityCode_T& iPOS,
199  const Date_T& iDepartureDate,
200  const DateTime_T& iRequestDateTime,
201  const CabinCode_T& iPreferredCabin,
202  const NbOfSeats_T& iPartySize,
203  const ChannelLabel_T& iChannel,
204  const TripType_T& iTripType,
205  const DayDuration_T& iStayDuration,
206  const FrequentFlyer_T& iFrequentFlyerType,
207  const Duration_T& iPreferredDepartureTime,
208  const WTP_T& iWTP,
209  const PriceValue_T& iValueOfTime);
214 
219 
220 
221  private:
228 
229 
230  private:
231  // /////////////// Attributes /////////////////
233  const DemandGeneratorKey_T _generatorKey;
234 
236  const AirportCode_T _origin;
237 
239  const AirportCode_T _destination;
240 
242  const CityCode_T _pos;
243 
245  const Date_T _preferredDepartureDate;
246 
248  const Duration_T _preferredDepartureTime;
249 
251  const DateTime_T _requestDateTime;
252 
254  const CabinCode_T _preferredCabin;
255 
257  const NbOfSeats_T _partySize;
258 
260  const ChannelLabel_T _channel;
261 
264  const TripType_T _tripType;
265 
267  const DayDuration_T _stayDuration;
268 
270  const FrequentFlyer_T _frequentFlyerType;
271 
273  const WTP_T _wtp;
274 
276  const PriceValue_T _valueOfTime;
277  };
278 
279 }
280 #endif // __STDAIR_BOM_BOOKINGREQUESTSTRUCT_HPP