IntaRNA 3.4.1
RNA-RNA interaction prediction | C++ API
Loading...
Searching...
No Matches
SeedHandlerExplicit.h
Go to the documentation of this file.
1
2#ifndef INTARNA_SEEDHANDLEREXPLICIT_H_
3#define INTARNA_SEEDHANDLEREXPLICIT_H_
4
5
7
8#include <boost/unordered_map.hpp>
9
10namespace IntaRNA
11{
12
20{
21public:
22
32 );
33
38
39
48 virtual
49 size_t
50 fillSeed(const size_t i1, const size_t j1, const size_t i2, const size_t j2);
51
62 virtual
63 void
64 traceBackSeed( Interaction & interaction, const size_t i1, const size_t i2) const;
65
66
73 virtual
74 E_type
75 getSeedE( const size_t i1, const size_t i2 ) const;
76
85 virtual
86 bool
87 isSeedBound( const size_t i1, const size_t i2 ) const;
88
95 virtual
96 size_t
97 getSeedLength1( const size_t i1, const size_t i2 ) const;
98
105 virtual
106 size_t
107 getSeedLength2( const size_t i1, const size_t i2 ) const;
108
109
110
118 static
119 std::string
120 checkSeedEncoding( const std::string & seed );
121
128 static
129 size_t
130 getSeedMinBP( const std::string & seedEncoding );
131
155 virtual
156 bool
157 updateToNextSeed( size_t & i1, size_t & i2
158 , const size_t i1min = 0, const size_t i1max = RnaSequence::lastPos
159 , const size_t i2min = 0, const size_t i2max = RnaSequence::lastPos
160 ) const;
161
162public:
163
167 class SeedData {
168 public:
169
174
183 SeedData( const std::string & seedEncoding, const InteractionEnergy & energyFunction );
184
186 size_t start1;
188 size_t start2;
190 std::string dotBar1;
192 std::string dotBar2;
193 // flag about bp complementarity
197
201 bool
202 isValid() const;
203
204 };
205
206protected:
207
209 boost::unordered_map< Interaction::BasePair, SeedData, Interaction::BasePair::Hash > seedForLeftEnd;
210
211};
212
213} /* namespace IntaRNA */
214
215#endif /* INTARNA_SEEDHANDLEREXPLICIT_H_ */
Definition InteractionEnergy.h:20
Definition Interaction.h:28
static const size_t lastPos
Definition RnaSequence.h:57
Definition SeedConstraint.h:20
Definition SeedHandlerExplicit.h:167
E_type energy
energy of the seed interaction excluding the right base pair
Definition SeedHandlerExplicit.h:196
bool allBpCompl
Definition SeedHandlerExplicit.h:194
size_t start2
5' start position in sequence 2
Definition SeedHandlerExplicit.h:188
std::string dotBar1
dot-bar encoding for sequence 1
Definition SeedHandlerExplicit.h:190
SeedData(const std::string &seedEncoding, const InteractionEnergy &energyFunction)
size_t start1
5' start position in sequence 1
Definition SeedHandlerExplicit.h:186
std::string dotBar2
dot-bar encoding for sequence 2
Definition SeedHandlerExplicit.h:192
Definition SeedHandlerExplicit.h:20
virtual size_t getSeedLength2(const size_t i1, const size_t i2) const
virtual E_type getSeedE(const size_t i1, const size_t i2) const
boost::unordered_map< Interaction::BasePair, SeedData, Interaction::BasePair::Hash > seedForLeftEnd
container to store
Definition SeedHandlerExplicit.h:209
virtual size_t getSeedLength1(const size_t i1, const size_t i2) const
virtual size_t fillSeed(const size_t i1, const size_t j1, const size_t i2, const size_t j2)
static size_t getSeedMinBP(const std::string &seedEncoding)
SeedHandlerExplicit(const InteractionEnergy &energy, const SeedConstraint &seedConstraint)
static std::string checkSeedEncoding(const std::string &seed)
virtual bool updateToNextSeed(size_t &i1, size_t &i2, const size_t i1min=0, const size_t i1max=RnaSequence::lastPos, const size_t i2min=0, const size_t i2max=RnaSequence::lastPos) const
virtual void traceBackSeed(Interaction &interaction, const size_t i1, const size_t i2) const
virtual bool isSeedBound(const size_t i1, const size_t i2) const
Definition SeedHandler.h:17
const SeedConstraint & seedConstraint
the seed constraint to be applied
Definition SeedHandler.h:202
const InteractionEnergy & energy
the used energy function
Definition SeedHandler.h:199
Definition Accessibility.h:13
int E_type
type for energy values (energy + accessibility [ED]) (internally)
Definition general.h:78