50 CSparseSegment::operator
bool(
void)
const
52 return !IsInvalidType();
156 anchor_gap = anchor_gap ||
179 anchor_gap = anchor_gap ||
210 swap(left_offset, right_offset);
219 if (right_offset > row_rg.
GetLength() - left_offset) {
220 right_offset = row_rg.
GetLength() - left_offset;
227 if ( aln_rg.
Empty() ) {
308 if ( !*
this )
return;
344 : m_Flags(eAllSegments),
347 m_AnchorDirect(
true),
363 m_AnchorDirect(
true),
378 m_AnchorDirect(
true),
402 CSparse_CI::operator
bool(
void)
const
404 return m_Aln && (m_AnchorIt || m_RowIt);
418 if(
typeid(*
this) ==
typeid(it)) {
428 if(
typeid(*
this) ==
typeid(it)) {
@ fMixedDir
contains at least one reversed range
const TPairwiseAlnVector & GetPairwiseAlns(void) const
The vector of pairwise alns.
TDim GetAnchorRow(void) const
Which is the anchor row?
A pairwise aln is a collection of ranges for a pair of rows.
CPairwiseAln iterator. Iterates over aligned ranges and gaps.
bool IsDirect(void) const
Direction of the second sequence relative to the first one.
@ eGap
Gap or unaligned range.
bool IsFirstDirect(void) const
Absolute direction of the first sequence.
ESegType GetSegType(void) const
Get current segment type.
const TSignedRange & GetSecondRange(void) const
Current range on the second sequence. May be empty when in a gap.
const TSignedRange & GetFirstRange(void) const
Current range on the first sequence.
virtual const TSignedRange & GetAlnRange(void) const
Get alignment range for the segment.
virtual TSegTypeFlags GetType(void) const
Get current segment type.
virtual const TSignedRange & GetRange(void) const
Get the selected row range.
CSparseSegment(void)
CSparseSegment - IAlnSegment implementation for CAlnMap::CAlnChunk.
Implementation of IAlnSegmentIterator for CSparseAln.
virtual const value_type & operator*(void) const
TSignedRange m_TotalRange
void x_InitSegment(void)
CSparse_CI.
virtual ~CSparse_CI(void)
virtual IAlnSegmentIterator * Clone(void) const
Create a copy of the iterator.
CConstRef< CAnchoredAln > m_Aln
void x_CheckSegment(void)
virtual const value_type * operator->(void) const
virtual bool operator==(const IAlnSegmentIterator &it) const
Compare iterators.
virtual bool operator!=(const IAlnSegmentIterator &it) const
void x_InitIterator(void)
CSparse_CI(void)
Create 'empty' iterator.
virtual IAlnSegmentIterator & operator++(void)
Advance to the next segment.
TSignedRange m_NextAnchorRg
bool x_Equals(const CSparse_CI &other) const
Alignment segment iterator interface.
@ eSkipInserts
Iterate segments where at least some rows are aligned (including gap segments)
@ eInsertsOnly
Iterate only ranges not participating in the alignment (unaligned segments)
@ eAllSegments
Iterate all segments.
@ eSkipGaps
Skip gap segments (show only aligned ranges)
Alignment segment interface.
@ fAligned
Aligned segment.
@ fInvalid
The iterator is in bad state.
@ fIndel
Either anchor or the selected row is not present in the segment.
@ fUnaligned
The range on the selected sequence does not participate in the alignment (the alignment range of the ...
@ fReversed
The selected row is reversed (relative to the anchor).
@ fGap
Both anchor row and the selected row are not included in the segment (some other row is present and t...
bool IsAligned(void) const
int TSignedSeqPos
Type for signed sequence position.
void swap(NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair1, NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair2)
void Reset(void)
Reset reference object.
position_type GetLength(void) const
TThisType & SetToOpen(position_type toOpen)
position_type GetToOpen(void) const
static TThisType GetEmpty(void)
TThisType & SetOpen(position_type from, position_type toOpen)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
void SetFrom(TFrom value)
Assign a value to From data member.
TFrom GetFrom(void) const
Get the From member data.
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is orig
range(_Ty, _Ty) -> range< _Ty >
USING_SCOPE(ncbi::objects)
#define row(bind, expected)