1 #ifndef LOCARNA_ALIGNMENT_HH 2 #define LOCARNA_ALIGNMENT_HH 11 #include "scoring_fwd.hh" 20 class AnchorConstraints;
52 Gap gap()
const {assert(end_<0);
return Gap(
size_t(-(end_+1)));}
63 class AlignmentEdges :
public std::pair<Alignment__edge_ends_t,Alignment__edge_ends_t> {
64 typedef Alignment__edge_ends_t edge_ends_t;
65 typedef std::pair<edge_ends_t,edge_ends_t> parent_t;
73 assert(x.size()==y.size());
78 size()
const {
return first.size();}
110 alistr_to_edge_ends(
const std::string &alistr);
133 const edges_t &edges);
187 append(edge_end_t i, edge_end_t j);
193 add_basepairA(
int i,
int j);
199 add_basepairB(
int i,
int j);
205 void add_deleted_basepairA(
int i,
int j);
209 void add_deleted_basepairB(
int i,
int j);
230 alignment_edges(
bool only_local)
const;
238 local_startA()
const;
246 local_startB()
const;
259 dot_bracket_structureA(
bool only_local)
const;
267 dot_bracket_structureB(
bool only_local)
const;
AlignmentEdges edges_t
description of alignment edges
Definition: alignment.hh:100
end of an alignment edge
Definition: alignment.hh:27
AlignmentEdges(const edge_ends_t &x, const edge_ends_t &y)
Construct asserting equal length.
Definition: alignment.hh:69
Gap gap() const
Definition: alignment.hh:52
pair of vector of alignment edges
Definition: alignment.hh:63
EdgeEnd(pos_type end)
construct as position
Definition: alignment.hh:36
size_type pos_type
type of a sequence position
Definition: aux.hh:97
size_t size() const
Size.
Definition: alignment.hh:78
std::vector< EdgeEnd > Alignment__edge_ends_t
vector of alignment edge ends
Definition: alignment.hh:60
size_t size_type
general size type
Definition: aux.hh:94
EdgeEnd(Gap end)
construct as gap
Definition: alignment.hh:40
Definition: aligner.cc:17
EdgeEnd edge_end_t
edge end
Definition: alignment.hh:94
"enum class" of gaps in alignment edges
Definition: aux.hh:104
Implementation of Alignment.
Definition: alignment_impl.hh:22
bool is_pos() const
is position test
Definition: alignment.hh:48
An RNA secondary structure.
Definition: rna_structure.hh:26
EdgeEnd()
construct as invalid end
Definition: alignment.hh:32
Represents a structure-annotated sequence alignment.
Definition: alignment.hh:87
bool is_gap() const
gap test
Definition: alignment.hh:44
"Sequence View" of multiple alignment as array of column vectors
Definition: sequence.hh:29
Alignment__edge_ends_t edge_ends_t
edge ends
Definition: alignment.hh:97