$treeview $search $mathjax
StdAir Logo  1.00.2
$projectbrief
$projectbrief
$searchbox

stdair/bom/NestingNodeKey.hpp

Go to the documentation of this file.
00001 #ifndef __STDAIR_BOM_NESTINGNODEKEY_HPP
00002 #define __STDAIR_BOM_NESTINGNODEKEY_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 NestingNodeKey : public KeyAbstract {
00027     friend class boost::serialization::access;
00028     
00029     // /////////// Constructors and destructors ///////////
00030   private:
00034     NestingNodeKey();
00035     
00036   public:
00040     NestingNodeKey (const NestingNodeCode_T& iNestingNodeCode);
00041 
00045     NestingNodeKey (const NestingNodeKey&);
00046 
00050     ~NestingNodeKey();
00051 
00052 
00053   public:
00054     // /////////// Getters //////////
00056     const NestingNodeCode_T& getNestingNodeCode () const {
00057       return _nestingNodeCode;
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     NestingNodeCode_T _nestingNodeCode;
00112   };
00113 
00114 }
00115 #endif // __STDAIR_BOM_NESTINGNODEKEY_HPP