00001 #ifndef __STDAIR_BOM_TIMEPERIODKEY_HPP 00002 #define __STDAIR_BOM_TIMEPERIODKEY_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STDAIR 00008 #include <stdair/bom/KeyAbstract.hpp> 00009 #include <stdair/stdair_date_time_types.hpp> 00010 00011 namespace stdair { 00015 struct TimePeriodKey : public KeyAbstract { 00016 00017 public: 00018 // /////////// Construction /////////// 00020 TimePeriodKey (const Time_T&, 00021 const Time_T&); 00023 TimePeriodKey (const TimePeriodKey&); 00025 ~TimePeriodKey (); 00026 private: 00028 TimePeriodKey (); 00029 00030 public: 00031 // /////////// Getter ////////// 00035 const Time_T& getTimeRangeStart() const { 00036 return _timeRangeStart; 00037 } 00038 00042 const Time_T& getTimeRangeEnd() const { 00043 return _timeRangeEnd; 00044 } 00045 00046 // /////////// Display support methods ///////// 00052 void toStream (std::ostream& ioOut) const; 00053 00059 void fromStream (std::istream& ioIn); 00060 00066 const std::string toString() const; 00067 00068 private: 00069 // ///////////////// Attributes /////////////////// 00073 Time_T _timeRangeStart; 00074 00078 Time_T _timeRangeEnd; 00079 00080 }; 00081 00082 } 00083 #endif // __STDAIR_BOM_TIMEPERIODKEY_HPP