src/ell/rna/DW_RNA.hh
Go to the documentation of this file.00001 #ifndef DW_RNA_HH_ 00002 #define DW_RNA_HH_ 00003 00004 #include "ell/DirectWalk.hh" 00005 00006 #include <string> 00007 #include <vector> 00008 00009 namespace ell { 00010 00019 class DW_RNA_MorganHiggs : public DirectWalk { 00020 00021 protected: 00022 00025 const size_t iterations; 00026 00027 public: 00028 00032 DW_RNA_MorganHiggs( const size_t iterations ); 00033 00035 virtual ~DW_RNA_MorganHiggs(); 00036 00048 virtual 00049 StateCollector* 00050 walk( const State* const begin 00051 , const State* const end 00052 , StateCollector* const scWalk 00053 ) const; 00054 00058 size_t 00059 getIterations(void) const; 00060 00061 protected: 00062 00063 static 00064 double 00065 addBond( std::string& sequence 00066 , std::vector<size_t>& v_struct 00067 , size_t start 00068 , size_t end 00069 , StateCollector* sc ); 00070 00071 static 00072 double 00073 deleteBond( std::string& sequence 00074 , std::vector<size_t>& v_struct 00075 , size_t start 00076 , StateCollector* sc ); 00077 00078 00079 }; 00080 00081 } // namespace ell 00082 00083 00084 00085 #endif /*DW_RNA_HH_*/