IntaRNA 3.4.1
RNA-RNA interaction prediction | C++ API
Loading...
Searching...
No Matches
ReverseAccessibility.h
Go to the documentation of this file.
1
2#ifndef INTARNA_REVERSEACCESSIBILITY_H_
3#define INTARNA_REVERSEACCESSIBILITY_H_
4
6
7namespace IntaRNA {
8
14public:
15
22
26 virtual ~ReverseAccessibility();
27
36 virtual
37 E_type
38 getED( const size_t from, const size_t to ) const;
39
40
45 virtual
46 const RnaSequence &
47 getSequence() const;
48
49
57 virtual
59 getAccConstraint() const;
60
65 virtual
66 const Accessibility &
68
69
75 size_t
76 getReversedIndex( const size_t i ) const;
77
84 getReversedIndexRange( const IndexRange & r ) const;
85
86
87protected:
88
89
92
95
98
99
105 static
106 std::string
108
114 static
115 std::string
116 getReversedString( const std::string& str );
117
118
119};
120
121
125
126inline
128 :
129 Accessibility( origAcc.getSequence(), origAcc.getMaxLength(), &origAcc.getAccConstraint() )
130 , origAcc(origAcc)
131 , seqReversed( seq.getId(), getReversedString(seq) )
132 , accConstrReversed( origAcc.getAccConstraint(), true )
133{
134}
135
137
138inline
141
143
144inline
145const RnaSequence &
147getSequence() const
148{
149 // access reversed sequence
150 return seqReversed;
151}
152
153
155
156inline
159getAccConstraint() const
160{
161 // access reversed accessibility constraint
162 return accConstrReversed;
163}
164
165
167
168
169inline
170E_type
172getED( const size_t from, const size_t to ) const
173{
174 // check indices
175 checkIndices(from,to);
176 // reversed ED access
177 return origAcc.getED( seq.size()-to-1, seq.size()-from-1 );
178}
179
181
182inline
183const Accessibility &
189
191
192inline
193size_t
195getReversedIndex( const size_t i ) const
196{
197 // compute reverse index
198 return this->seq.getReversedIndex(i);
199}
200
202
203inline
206getReversedIndexRange( const IndexRange & r ) const
207{
208 // reverse indices and their order to keep them ascending/descending
210}
211
213
214} // namespace
215
216#endif /* REVERSEACCESSIBILITY_H_ */
Definition AccessibilityConstraint.h:26
Definition Accessibility.h:25
const RnaSequence & seq
the RNA sequence the accessibilities correspond to
Definition Accessibility.h:179
virtual E_type getED(const size_t from, const size_t to) const =0
virtual void checkIndices(const size_t from, const size_t to) const
Definition Accessibility.h:245
Definition IndexRange.h:20
size_t from
the start of the index range
Definition IndexRange.h:32
size_t to
the end of the index range
Definition IndexRange.h:35
Definition ReverseAccessibility.h:13
ReverseAccessibility(Accessibility &origAcc)
Definition ReverseAccessibility.h:127
static std::string getReversedString(const RnaSequence &seq)
static std::string getReversedString(const std::string &str)
virtual E_type getED(const size_t from, const size_t to) const
Definition ReverseAccessibility.h:172
virtual ~ReverseAccessibility()
Definition ReverseAccessibility.h:139
Accessibility & origAcc
Access to the accessibility object to reverse.
Definition ReverseAccessibility.h:91
IndexRange getReversedIndexRange(const IndexRange &r) const
Definition ReverseAccessibility.h:206
RnaSequence seqReversed
reversed sequence object
Definition ReverseAccessibility.h:94
virtual const RnaSequence & getSequence() const
Definition ReverseAccessibility.h:147
virtual const Accessibility & getAccessibilityOrigin() const
Definition ReverseAccessibility.h:185
AccessibilityConstraint accConstrReversed
reversed accessibility constraint object
Definition ReverseAccessibility.h:97
size_t getReversedIndex(const size_t i) const
Definition ReverseAccessibility.h:195
virtual const AccessibilityConstraint & getAccConstraint() const
Definition ReverseAccessibility.h:159
Definition RnaSequence.h:29
size_t getReversedIndex(const size_t i) const
Definition RnaSequence.h:424
size_t size() const
Definition RnaSequence.h:366
Definition Accessibility.h:13
int E_type
type for energy values (energy + accessibility [ED]) (internally)
Definition general.h:78