00001 #ifndef __STDAIR_BOM_PARSEDKEY_HPP 00002 #define __STDAIR_BOM_PARSEDKEY_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <iosfwd> 00009 #include <string> 00010 // StdAir 00011 #include <stdair/stdair_date_time_types.hpp> 00012 #include <stdair/bom/KeyAbstract.hpp> 00013 00014 namespace stdair { 00016 struct InventoryKey; 00017 struct FlightDateKey; 00018 struct SegmentDateKey; 00019 00021 struct ParsedKey : public KeyAbstract{ 00022 00023 // //////////// Getter ////////////// 00025 InventoryKey getInventoryKey () const; 00026 00028 FlightDateKey getFlightDateKey () const; 00029 00031 SegmentDateKey getSegmentKey () const; 00032 00034 const Duration_T getBoardingTime () const; 00035 00036 public: 00037 // /////////// Display support methods ///////// 00043 void toStream (std::ostream& ioOut) const; 00044 00050 void fromStream (std::istream& ioIn); 00051 00061 const std::string toString() const; 00062 00063 public: 00064 // ////////////// Constructor and destructor. ////////////// 00065 // Default constructor 00066 ParsedKey (); 00067 // Defaut destructor 00068 ~ParsedKey (); 00069 00070 public: 00071 // ///////////// Attributes /////////////// 00072 std::string _fullKey; 00073 std::string _airlineCode; 00074 std::string _flightNumber; 00075 std::string _departureDate; 00076 std::string _boardingPoint; 00077 std::string _offPoint; 00078 std::string _boardingTime; 00079 }; 00080 00081 } 00082 #endif // __STDAIR_BOM_PARSEDKEY_HPP