StdAir Logo  1.00.0
C++ Standard Airline IT Object Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BucketKey.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_BOM_BUCKETKEY_HPP
2 #define __STDAIR_BOM_BUCKETKEY_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iosfwd>
9 #include <string>
10 // StdAir
13 
15 namespace boost {
16  namespace serialization {
17  class access;
18  }
19 }
20 
21 namespace stdair {
22 
26  struct BucketKey : public KeyAbstract {
28 
29  // /////////// Constructors and destructors ///////////
30  private:
34  BucketKey();
35 
36  public:
40  BucketKey (const SeatIndex_T&);
44  BucketKey (const BucketKey&);
48  ~BucketKey();
49 
50 
51  public:
52  // /////////// Getters //////////
54  const SeatIndex_T& getSeatIndex() const {
55  return _seatIndex;
56  }
57 
58 
59  public:
60  // /////////// Display support methods /////////
66  void toStream (std::ostream& ioOut) const;
67 
73  void fromStream (std::istream& ioIn);
74 
84  const std::string toString() const;
85 
86 
87  public:
88  // /////////// (Boost) Serialisation support methods /////////
92  template<class Archive>
93  void serialize (Archive& ar, const unsigned int iFileVersion);
94 
95  private:
100  void serialisationImplementationExport() const;
101  void serialisationImplementationImport();
102 
103 
104  private:
105  // ///////////////// Attributes ///////////////
109  SeatIndex_T _seatIndex;
110  };
111 
112 }
113 #endif // __STDAIR_BOM_BUCKETKEY_HPP