StdAir Logo  0.45.1
C++ Standard Airline IT Object Library
BomRootKey.hpp
Go to the documentation of this file.
00001 #ifndef __STDAIR_BOM_BOMROOTKEY_HPP
00002 #define __STDAIR_BOM_BOMROOTKEY_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STL
00008 #include <iosfwd>
00009 #include <string>
00010 // StdAir
00011 #include <stdair/bom/KeyAbstract.hpp>
00012 
00014 namespace boost {
00015   namespace serialization {
00016     class access;
00017   }
00018 }
00019 
00020 namespace stdair {
00021 
00025   struct BomRootKey : public KeyAbstract {
00026     friend class boost::serialization::access;
00027 
00028     // /////////// Constructors and destructors ///////////
00029   public:
00033     BomRootKey ();
00034 
00038     BomRootKey (const std::string& iIdentification);
00039 
00043     BomRootKey (const BomRootKey&);
00044 
00048     ~BomRootKey();
00049 
00050 
00051   public:
00052     // /////////// Getters //////////
00056     const std::string& getID() const {
00057       return _id;
00058     }
00059 
00060 
00061   public:
00062     // /////////// Display support methods /////////
00068     void toStream (std::ostream& ioOut) const;
00069 
00075     void fromStream (std::istream& ioIn);
00076 
00086     const std::string toString() const;
00087 
00088 
00089   public:
00090     // /////////// (Boost) Serialisation support methods /////////
00094     template<class Archive>
00095     void serialize (Archive& ar, const unsigned int iFileVersion);
00096 
00097   private:
00102     void serialisationImplementationExport() const;
00103     void serialisationImplementationImport();
00104 
00105 
00106   private:
00107     // ///////////////// Attributes ///////////////
00111     std::string _id;
00112   };
00113 
00114 }
00115 #endif // __STDAIR_BOM_BOMROOTKEY_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines