$treeview $search $mathjax
00001 #ifndef __STDAIR_BOM_BUCKETKEY_HPP 00002 #define __STDAIR_BOM_BUCKETKEY_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <iosfwd> 00009 #include <string> 00010 // StdAir 00011 #include <stdair/stdair_inventory_types.hpp> 00012 #include <stdair/bom/KeyAbstract.hpp> 00013 00015 namespace boost { 00016 namespace serialization { 00017 class access; 00018 } 00019 } 00020 00021 namespace stdair { 00022 00026 struct BucketKey : public KeyAbstract { 00027 friend class boost::serialization::access; 00028 00029 // /////////// Constructors and destructors /////////// 00030 private: 00034 BucketKey(); 00035 00036 public: 00040 BucketKey (const SeatIndex_T&); 00044 BucketKey (const BucketKey&); 00048 ~BucketKey(); 00049 00050 00051 public: 00052 // /////////// Getters ////////// 00054 const SeatIndex_T& getSeatIndex() const { 00055 return _seatIndex; 00056 } 00057 00058 00059 public: 00060 // /////////// Display support methods ///////// 00066 void toStream (std::ostream& ioOut) const; 00067 00073 void fromStream (std::istream& ioIn); 00074 00084 const std::string toString() const; 00085 00086 00087 public: 00088 // /////////// (Boost) Serialisation support methods ///////// 00092 template<class Archive> 00093 void serialize (Archive& ar, const unsigned int iFileVersion); 00094 00095 private: 00100 void serialisationImplementationExport() const; 00101 void serialisationImplementationImport(); 00102 00103 00104 private: 00105 // ///////////////// Attributes /////////////// 00109 SeatIndex_T _seatIndex; 00110 }; 00111 00112 } 00113 #endif // __STDAIR_BOM_BUCKETKEY_HPP