Go to the documentation of this file.00001
00002
00003
00004
00005 #include <cassert>
00006 #include <sstream>
00007
00008 #include <stdair/bom/OptimisationNotificationStruct.hpp>
00009
00010 namespace stdair {
00011
00012
00013 OptimisationNotificationStruct::OptimisationNotificationStruct()
00014 : _partySize (0), _stayDuration (0), _wtp (0.0), _valueOfTime (0.0) {
00015 assert (false);
00016 }
00017
00018
00019 OptimisationNotificationStruct::
00020 OptimisationNotificationStruct (const OptimisationNotificationStruct& iOptimisationNotification)
00021 : _origin (iOptimisationNotification._origin),
00022 _destination (iOptimisationNotification._destination),
00023 _pos (iOptimisationNotification._pos),
00024 _preferredDepartureDate (iOptimisationNotification._preferredDepartureDate),
00025 _notificationDateTime (iOptimisationNotification._notificationDateTime),
00026 _preferredCabin (iOptimisationNotification._preferredCabin),
00027 _partySize (iOptimisationNotification._partySize),
00028 _channel (iOptimisationNotification._channel),
00029 _tripType (iOptimisationNotification._tripType),
00030 _stayDuration (iOptimisationNotification._stayDuration),
00031 _frequentFlyerType (iOptimisationNotification._frequentFlyerType),
00032 _preferredDepartureTime (iOptimisationNotification._preferredDepartureTime),
00033 _wtp (iOptimisationNotification._wtp),
00034 _valueOfTime (iOptimisationNotification._valueOfTime) {
00035 }
00036
00037
00038 OptimisationNotificationStruct::
00039 OptimisationNotificationStruct (const AirportCode_T& iOrigin,
00040 const AirportCode_T& iDestination,
00041 const CityCode_T& iPOS,
00042 const Date_T& iDepartureDate,
00043 const DateTime_T& iNotificationDateTime,
00044 const CabinCode_T& iPreferredCabin,
00045 const NbOfSeats_T& iPartySize,
00046 const ChannelLabel_T& iChannel,
00047 const TripType_T& iTripType,
00048 const DayDuration_T& iStayDuration,
00049 const FrequentFlyer_T& iFrequentFlyerType,
00050 const Duration_T& iPreferredDepartureTime,
00051 const WTP_T& iWTP,
00052 const PriceValue_T& iValueOfTime)
00053 : _origin (iOrigin), _destination (iDestination),
00054 _pos (iPOS), _preferredDepartureDate (iDepartureDate),
00055 _notificationDateTime (iNotificationDateTime),
00056 _preferredCabin (iPreferredCabin), _partySize (iPartySize),
00057 _channel (iChannel), _tripType (iTripType),
00058 _stayDuration (iStayDuration), _frequentFlyerType (iFrequentFlyerType),
00059 _preferredDepartureTime (iPreferredDepartureTime), _wtp (iWTP),
00060 _valueOfTime (iValueOfTime) {
00061 }
00062
00063
00064 OptimisationNotificationStruct::~OptimisationNotificationStruct() {
00065 }
00066
00067
00068 void OptimisationNotificationStruct::toStream (std::ostream& ioOut) const {
00069 ioOut << describe();
00070 }
00071
00072
00073 void OptimisationNotificationStruct::fromStream (std::istream& ioIn) {
00074 }
00075
00076
00077 const std::string OptimisationNotificationStruct::describe() const {
00078 std::ostringstream oStr;
00079 oStr << "At " << _notificationDateTime
00080 << ", for (" << _pos << ") " << _origin << "-" << _destination
00081 << " " << _preferredDepartureDate << " " << _preferredCabin
00082 << " " << _partySize << " " << _channel << " " << _tripType
00083 << " " << _stayDuration << " " << _frequentFlyerType
00084 << " " << _preferredDepartureTime << " " << _wtp
00085 << " " << _valueOfTime;
00086 return oStr.str();
00087 }
00088
00089 }