00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 #ifndef __ScaffoldLink_AMOS_HH 00011 #define __ScaffoldLink_AMOS_HH 1 00012 00013 #include "Link_AMOS.hh" 00014 #include "Scaffold_AMOS.hh" 00015 #include <utility> 00016 00017 00018 00019 00020 namespace AMOS { 00021 00022 //================================================ ScaffoldLink_t ============== 00028 //============================================================================== 00029 class ScaffoldLink_t : public Link_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 //--------------------------------------------------- writeRecord ------------ 00044 virtual void writeRecord (std::ostream & fix, std::ostream & var) const; 00045 00046 00047 public: 00048 00049 static const NCode_t NCODE; 00051 00052 00053 //--------------------------------------------------- ScaffoldLink_t --------- 00058 ScaffoldLink_t ( ) 00059 { 00060 00061 } 00062 00063 00064 //--------------------------------------------------- ScaffoldLink_t --------- 00067 ScaffoldLink_t (const ScaffoldLink_t & source) 00068 { 00069 *this = source; 00070 } 00071 00072 00073 //--------------------------------------------------- ~ScaffoldLink_t -------- 00076 ~ScaffoldLink_t ( ) 00077 { 00078 00079 } 00080 00081 00082 //--------------------------------------------------- clear ------------------ 00083 virtual void clear ( ) 00084 { 00085 Link_t::clear( ); 00086 } 00087 00088 00089 //--------------------------------------------------- getScaffolds ----------- 00094 std::pair<ID_t, ID_t> getScaffolds ( ) const 00095 { 00096 return Link_t::getNodes( ); 00097 } 00098 00099 00100 //--------------------------------------------------- getNCode --------------- 00101 virtual NCode_t getNCode ( ) const 00102 { 00103 return ScaffoldLink_t::NCODE; 00104 } 00105 00106 00107 //--------------------------------------------------- getNodeType ------------ 00108 NCode_t getNodeType ( ) const 00109 { 00110 return Scaffold_t::NCODE; 00111 } 00112 00113 00114 //--------------------------------------------------- readMessage ------------ 00115 virtual void readMessage (const Message_t & msg); 00116 00117 00118 //--------------------------------------------------- setScaffolds ----------- 00127 void setScaffolds (std::pair<ID_t, ID_t> scaffolds) 00128 { 00129 Link_t::setNodes (scaffolds); 00130 } 00131 00132 00133 //--------------------------------------------------- writeMessage ----------- 00134 virtual void writeMessage (Message_t & msg) const; 00135 00136 }; 00137 00138 } // namespace AMOS 00139 00140 #endif // #ifndef __ScaffoldLink_AMOS_HH