AirTSP Logo  1.01.0
C++ Simulated Airline Travel Solution Provider Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OriginDestinationSet.hpp
Go to the documentation of this file.
1 #ifndef __AIRTSP_BOM_ORIGINDESTINATIONSET_HPP
2 #define __AIRTSP_BOM_ORIGINDESTINATIONSET_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iosfwd>
9 #include <string>
10 // StdAir
11 #include <stdair/bom/BomAbstract.hpp>
12 // AirTSP
15 
17 namespace boost {
18  namespace serialization {
19  class access;
20  }
21 }
22 
24 namespace stdair {
25  template <typename BOM> class FacBom;
26  class FacBomManager;
27 }
28 
29 namespace AIRTSP {
30 
44  class OriginDestinationSet : public stdair::BomAbstract {
48  template <typename BOM> friend class stdair::FacBom;
49  friend class stdair::FacBomManager;
51 
52  public:
53  // ////////// Type definitions ////////////
58 
59 
60  public:
61  // /////////// Getters /////////////
65  const Key_T& getKey() const {
66  return _key;
67  }
68 
72  const stdair::AirportCode_T& getDestination() const {
73  return _key.getOffPoint();
74  }
75 
79  stdair::BomAbstract* const getParent() const {
80  return _parent;
81  }
82 
86  const stdair::HolderMap_T& getHolderMap() const {
87  return _holderMap;
88  }
89 
90 
91  public:
92  // /////////// Display support methods /////////
98  void toStream (std::ostream& ioOut) const {
99  ioOut << toString();
100  }
101 
107  void fromStream (std::istream& ioIn) {
108  }
109 
113  std::string toString() const;
114 
118  const std::string describeKey() const {
119  return _key.toString();
120  }
121 
122 
123  public:
124  // /////////// (Boost) Serialisation support methods /////////
128  template<class Archive>
129  void serialize (Archive& ar, const unsigned int iFileVersion);
130 
131  private:
136  void serialisationImplementationExport() const;
137  void serialisationImplementationImport();
138 
139 
140  protected:
141  // ////////// Constructors and destructors /////////
145  OriginDestinationSet (const Key_T&);
146 
151 
152  private:
157 
162 
163  protected:
164  // ////////// Attributes /////////
169 
173  stdair::BomAbstract* _parent;
174 
178  stdair::HolderMap_T _holderMap;
179  };
180 
181 }
182 #endif // __AIRTSP_BOM_ORIGINDESTINATIONSET_HPP
183