ScaffoldEdge_AMOS.hh

Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 #ifndef __ScaffoldEdge_AMOS_HH
00011 #define __ScaffoldEdge_AMOS_HH 1
00012 
00013 #include "Edge_AMOS.hh"
00014 #include "ScaffoldLink_AMOS.hh"
00015 #include <vector>
00016 
00017 
00018 
00019 
00020 namespace AMOS {
00021 
00022 //================================================ ScaffoldEdge_t ==============
00028 //==============================================================================
00029   class ScaffoldEdge_t : public ScaffoldLink_t, public IEdge_t
00030 {
00031   
00032 private:
00033 
00034   void setNodeType (NCode_t nodtype);
00035 
00036 
00037 protected:
00038 
00039   //--------------------------------------------------- readRecord -------------
00040   virtual void readRecord (std::istream & fix, std::istream & var);
00041 
00042 
00043   //--------------------------------------------------- readRecordFix ----------
00044   virtual void readRecordFix (std::istream & fix);
00045 
00046 
00047   //--------------------------------------------------- writeRecord ------------
00048   virtual void writeRecord (std::ostream & fix, std::ostream & var) const;
00049 
00050 
00051 public:
00052 
00053   static const NCode_t NCODE;
00055 
00056 
00057   //--------------------------------------------------- ScaffoldEdge_t ---------
00060   ScaffoldEdge_t ( )
00061   {
00062     // ScaffoldLink_t sets NodeType
00063   }
00064 
00065 
00066   //--------------------------------------------------- ScaffoldEdge_t ---------
00069   ScaffoldEdge_t (const ScaffoldEdge_t & source)
00070   {
00071     *this = source;
00072   }
00073 
00074 
00075   //--------------------------------------------------- ~ScaffoldEdge_t --------
00078   ~ScaffoldEdge_t ( )
00079   {
00080 
00081   }
00082 
00083 
00084   //--------------------------------------------------- clear ------------------
00085   virtual void clear ( )
00086   {
00087     // ScaffoldLink_t preserves NodeType
00088     ScaffoldLink_t::clear( );
00089     IEdge_t::clear( );
00090   }
00091 
00092 
00093   //--------------------------------------------------- getScaffoldLinks -------
00098   const std::vector<ID_t> & getScaffoldLinks ( ) const
00099   {
00100     return IEdge_t::getLinks( );
00101   }
00102 
00103 
00104   //--------------------------------------------------- getScaffoldLinks -------
00109   std::vector<ID_t> & getScaffoldLinks ( )
00110   {
00111     return IEdge_t::getLinks( );
00112   }
00113 
00114 
00115   //--------------------------------------------------- getNCode ---------------
00116   virtual NCode_t getNCode ( ) const
00117   {
00118     return ScaffoldEdge_t::NCODE;
00119   }
00120 
00121 
00122   //--------------------------------------------------- readMessage ------------
00123   virtual void readMessage (const Message_t & msg);
00124 
00125   
00126   //--------------------------------------------------- setScaffoldLinks -------
00132   void setScaffoldLinks (const std::vector<ID_t> & links)
00133   {
00134     IEdge_t::setLinks (links);
00135   }
00136 
00137 
00138   //--------------------------------------------------- writeMessage -----------
00139   virtual void writeMessage (Message_t & msg) const;
00140 
00141 };
00142 
00143 } // namespace AMOS
00144 
00145 #endif // #ifndef __ScaffoldEdge_AMOS_HH

Generated on Mon Feb 22 17:36:27 2010 for libAMOS by  doxygen 1.4.7