$treeview $search $mathjax
00001 #ifndef __AIRSCHED_BOM_ORIGINDESTINATIONSETKEY_HPP 00002 #define __AIRSCHED_BOM_ORIGINDESTINATIONSETKEY_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <iosfwd> 00009 #include <string> 00010 // StdAir 00011 #include <stdair/stdair_basic_types.hpp> 00012 #include <stdair/bom/KeyAbstract.hpp> 00013 00015 namespace boost { 00016 namespace serialization { 00017 class access; 00018 } 00019 } 00020 00021 namespace AIRSCHED { 00022 00030 struct OriginDestinationSetKey : public stdair::KeyAbstract { 00031 friend class boost::serialization::access; 00032 00033 // /////////// Constructors and destructors /////////// 00034 private: 00038 OriginDestinationSetKey(); 00039 00040 public: 00044 OriginDestinationSetKey (const stdair::AirportCode_T& iDestination); 00045 00049 OriginDestinationSetKey (const OriginDestinationSetKey&); 00050 00054 ~OriginDestinationSetKey(); 00055 00056 00057 public: 00058 // /////////// Getters ////////// 00062 const stdair::AirportCode_T& getOffPoint() const { 00063 return _destination; 00064 } 00065 00066 00067 public: 00068 // /////////// Display support methods ///////// 00074 void toStream (std::ostream& ioOut) const; 00075 00081 void fromStream (std::istream& ioIn); 00082 00092 const std::string toString() const; 00093 00094 00095 public: 00096 // /////////// (Boost) Serialisation support methods ///////// 00100 template<class Archive> 00101 void serialize (Archive& ar, const unsigned int iFileVersion); 00102 00103 private: 00108 void serialisationImplementationExport() const; 00109 void serialisationImplementationImport(); 00110 00111 00112 private: 00113 // ///////////////// Attributes /////////////// 00117 stdair::AirportCode_T _destination; 00118 }; 00119 00120 } 00121 #endif // __AIRSCHED_BOM_ORIGINDESTINATIONSETKEY_HPP