00001 // ////////////////////////////////////////////////////////////////////// 00002 // Import section 00003 // ////////////////////////////////////////////////////////////////////// 00004 // STL 00005 #include <cassert> 00006 #include <sstream> 00007 // StdAir 00008 #include <stdair/bom/VirtualClassStruct.hpp> 00009 #include <stdair/bom/BookingClass.hpp> 00010 00011 namespace stdair { 00012 00013 // //////////////////////////////////////////////////////////////////// 00014 VirtualClassStruct::VirtualClassStruct() : _bookingClass (NULL) { 00015 assert (false); 00016 } 00017 00018 // //////////////////////////////////////////////////////////////////// 00019 VirtualClassStruct::VirtualClassStruct (const VirtualClassStruct& iVC) 00020 : _bookingClass (iVC._bookingClass), _yield (iVC._yield), 00021 _mean (iVC._mean), _stdDev (iVC._stdDev) { 00022 } 00023 00024 // //////////////////////////////////////////////////////////////////// 00025 VirtualClassStruct::VirtualClassStruct (BookingClass& ioBookingClass) { 00026 _bookingClass = &ioBookingClass; 00027 } 00028 00029 // //////////////////////////////////////////////////////////////////// 00030 VirtualClassStruct::~VirtualClassStruct() { 00031 _bookingClass = NULL; 00032 } 00033 00034 // //////////////////////////////////////////////////////////////////// 00035 void VirtualClassStruct::toStream (std::ostream& ioOut) const { 00036 ioOut << describe(); 00037 } 00038 00039 // //////////////////////////////////////////////////////////////////// 00040 void VirtualClassStruct::fromStream (std::istream& ioIn) { 00041 } 00042 00043 // //////////////////////////////////////////////////////////////////// 00044 const std::string VirtualClassStruct::describe() const { 00045 std::ostringstream oStr; 00046 oStr << "Yield: " << _yield 00047 << ", Demand N (" << _mean << ", " << _stdDev << ")"; 00048 return oStr.str(); 00049 } 00050 00051 // //////////////////////////////////////////////////////////////////// 00052 const GeneratedDemandVector_T& VirtualClassStruct:: 00053 getGeneratedDemandVector() const { 00054 assert (_bookingClass != NULL); 00055 return _bookingClass->getGeneratedDemandVector(); 00056 } 00057 }