1 #ifndef LOCARNA_BASEPAIRS_HH 2 #define LOCARNA_BASEPAIRS_HH 16 #include "sparse_matrix.hh" 72 left()
const {
return left_;}
88 idx()
const {
return idx_;}
175 typedef std::pair<size_type,size_type>
bpair_t;
181 std::vector<LeftAdjList> left_;
182 std::vector<RightAdjList> right_;
196 resize(size_type seq_len);
200 generateBPLists(
const RnaData &rna_data);
221 len_(get_length_from_rna_data()),
227 generateBPLists(*rna_data_);
246 for (bpair_set_t::const_iterator it=bps.begin(); bps.end()!=it; ++it) {
247 register_arc(it->first,it->second);
268 register_arc(
int i,
int j);
283 arc(
int i,
int j)
const {
return arc_vec_[arcs_(i,j)];}
291 assert(idx<arc_vec_.size());
292 return arc_vec_[
idx];
327 get_length_from_rna_data()
const;
BasePairs__Arc(size_t idx, size_t left, size_t right)
Definition: basepairs.hh:54
represent sparsified data of RNA ensemble
Definition: rna_data.hh:42
size_t left() const
Definition: basepairs.hh:72
size_t right() const
Definition: basepairs.hh:80
std::ostream & operator<<(std::ostream &out, AlignerRestriction r)
Definition: aligner_restriction.hh:113
std::pair< size_type, size_type > bpair_t
type for pair of positions (base pairs)
Definition: basepairs.hh:175
Entry in a left adjacency list.
Definition: basepairs.hh:130
const Arc & arc(int i, int j) const
accesses basepair by (i,j)
Definition: basepairs.hh:283
Entry in a right adjacency list.
Definition: basepairs.hh:145
LeftAdjEntry(const Arc &a)
Definition: basepairs.hh:138
bool exists_arc(int i, int j) const
returns whether basepair (i,j) exists
Definition: basepairs.hh:297
Definition: aligner.cc:17
SparseMatrix< int > arc_matrix_t
type for matrix of arcs (actually arc indices)
Definition: basepairs.hh:172
BasePairs__Arc Arc
arc
Definition: basepairs.hh:117
const LeftAdjList & left_adjlist(int i) const
returns the list of arcs with right end i
Definition: basepairs.hh:272
size_t size_type
size
Definition: basepairs.hh:115
std::set< bpair_t > bpair_set_t
type for set of position pairs
Definition: basepairs.hh:178
const Arc & arc(size_type idx) const
Definition: basepairs.hh:290
size_type num_bps() const
returns number of basepairs in the object
Definition: basepairs.hh:301
BasePairs(size_type len, const bpair_set_t &bps)
Construct from a set of base pairs.
Definition: basepairs.hh:236
BasePairs(const RnaData *rna_data, double min_prob)
Definition: basepairs.hh:218
std::vector< Arc > arc_vec_t
Vector of arcs.
Definition: basepairs.hh:157
Represents a base pair.
Definition: basepairs.hh:40
std::vector< LeftAdjEntry > LeftAdjList
type of left adjacency list
Definition: basepairs.hh:166
const RightAdjList & right_adjlist(int i) const
returns the list of arcs with left end i
Definition: basepairs.hh:279
std::vector< RightAdjEntry > RightAdjList
type of right adjacency list
Definition: basepairs.hh:169
size_t idx() const
Definition: basepairs.hh:88
Describes sequence and structure ensemble of an RNA.
Definition: basepairs.hh:107
RightAdjEntry(const Arc &a)
Definition: basepairs.hh:153