00001 #ifndef __STDAIR_BOM_SEGMENTPERIODKEY_HPP 00002 #define __STDAIR_BOM_SEGMENTPERIODKEY_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // StdAir 00008 #include <stdair/stdair_basic_types.hpp> 00009 #include <stdair/bom/KeyAbstract.hpp> 00010 00011 namespace stdair { 00012 00014 struct SegmentPeriodKey : public KeyAbstract { 00015 00016 private: 00017 // /////////// Default constructor ////////// 00018 SegmentPeriodKey () { }; 00019 public: 00020 // /////////// Construction /////////// 00022 SegmentPeriodKey (const AirportCode_T&, const AirportCode_T&); 00023 SegmentPeriodKey (const SegmentPeriodKey&); 00025 ~SegmentPeriodKey (); 00026 00027 // /////////// Getters ////////// 00029 const AirportCode_T& getBoardingPoint() const { 00030 return _boardingPoint; 00031 } 00032 00034 const AirportCode_T& getOffPoint() const { 00035 return _offPoint; 00036 } 00037 00038 // /////////// Display support methods ///////// 00041 void toStream (std::ostream& ioOut) const; 00042 00045 void fromStream (std::istream& ioIn); 00046 00052 const std::string toString() const; 00053 00054 private: 00055 // Attributes 00057 AirportCode_T _boardingPoint; 00058 00060 AirportCode_T _offPoint; 00061 }; 00062 00063 } 00064 #endif // __STDAIR_BOM_SEGMENTPERIODKEY_HPP