NCBI C++ ToolKit
|
Search Toolkit Book for CEquivRange
#include <algo/align/mergetree/equiv_range.hpp>
Public Types | |
enum | ERelative { eWtf = 0x00 , eIntersects = 0x01 , eInterQuery = 0x02 , eInterSubjt = 0x04 , eBefore = 0x10 , eAfter = 0x20 , eAbove = 0x40 , eUnder = 0x80 } |
Public Member Functions | |
CEquivRange () | |
bool | Empty () const |
bool | NotEmpty () const |
bool | IntersectingWith (const CEquivRange &Other) const |
bool | AbuttingWith (const CEquivRange &Other) const |
ERelative | CalcRelative (const CEquivRange &Check) const |
ERelative | CalcRelativeDuo (const CEquivRange &Check) const |
Static Public Member Functions | |
static TSeqPos | Distance (const CEquivRange &A, const CEquivRange &B) |
static TSeqPos | Distance (const TEquivList &A, const TEquivList &B) |
Public Attributes | |
CRange< TSeqPos > | Query |
CRange< TSeqPos > | Subjt |
objects::ENa_strand | Strand |
int | Intercept |
int | Matches |
int | MisMatches |
vector< TSeqPos > | MisMatchSubjtPoints |
int | AlignId |
int | SegmtId |
int | SplitId |
Definition at line 51 of file equiv_range.hpp.
Enumerator | |
---|---|
eWtf | |
eIntersects | |
eInterQuery | |
eInterSubjt | |
eBefore | |
eAfter | |
eAbove | |
eUnder |
Definition at line 94 of file equiv_range.hpp.
|
inline |
Definition at line 54 of file equiv_range.hpp.
|
inline |
Definition at line 81 of file equiv_range.hpp.
References COpenRange< Position >::AbuttingWith(), Query, Strand, and Subjt.
Referenced by CEquivRangeBuilder::MergeAbuttings().
CEquivRange::ERelative CEquivRange::CalcRelative | ( | const CEquivRange & | Check | ) | const |
Definition at line 170 of file equiv_range.cpp.
References eAbove, eAfter, eBefore, eIntersects, Empty(), eNa_strand_minus, eNa_strand_plus, ERR_POST, eUnder, eWtf, CRange_Base::GetFrom(), CRange_Base::GetTo(), Info(), IntersectingWith(), Query, Strand, and Subjt.
Referenced by CMergeTree::x_FindAfters(), CMergeTree::x_FindAfters_Up(), CMergeTree::x_FindBefores(), CMergeTree::x_FindBefores_Up_Iter(), and CMergeTree::x_FindBefores_Up_Recur().
CEquivRange::ERelative CEquivRange::CalcRelativeDuo | ( | const CEquivRange & | Check | ) | const |
Definition at line 243 of file equiv_range.cpp.
References eAbove, eAfter, eBefore, eInterQuery, eIntersects, eInterSubjt, eNa_strand_minus, eNa_strand_plus, eUnder, eWtf, CRange_Base::GetFrom(), CRange_Base::GetTo(), COpenRange< Position >::IntersectingWith(), Query, Strand, and Subjt.
|
static |
Definition at line 330 of file equiv_range.cpp.
References A, abs, B, D, COpenRange< Position >::Empty(), max(), and SD.
Referenced by CAlignDistGraph::AddAlignment(), CAlignDistGraph::x_CalculateAllDistances(), and CAlignDistGraph::x_CalculateOneDistance().
|
static |
Definition at line 359 of file equiv_range.cpp.
References A, abs, B, BSR, D, COpenRange< Position >::Empty(), CRange_Base::GetFrom(), CRange_Base::GetTo(), COpenRange< Position >::IntersectionWith(), ITERATE, max(), and SD.
|
inline |
Definition at line 68 of file equiv_range.hpp.
References COpenRange< Position >::Empty(), Query, and Subjt.
Referenced by CalcRelative(), CEquivRangeBuilder::MergeAbuttings(), CMergeTree::x_FindAfters(), CMergeTree::x_FindAfters_Up(), CMergeTree::x_FindBefores(), CMergeTree::x_FindBefores_Up_Iter(), and CMergeTree::x_FindBefores_Up_Recur().
|
inline |
Definition at line 76 of file equiv_range.hpp.
References COpenRange< Position >::IntersectingWith(), Query, and Subjt.
Referenced by CalcRelative().
|
inline |
Definition at line 72 of file equiv_range.hpp.
References COpenRange< Position >::NotEmpty(), Query, and Subjt.
Referenced by CEquivRangeBuilder::SplitIntersections().
int CEquivRange::AlignId |
Definition at line 64 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::MergeAbuttings(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), CMergeTree::x_Dot_Nodes(), and CMergeTree::x_Search_Iter().
int CEquivRange::Intercept |
Definition at line 59 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), and CEquivRangeBuilder::SliceOnSubjt().
int CEquivRange::Matches |
Definition at line 60 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::CalcMatches(), CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), CMergeTree::x_Dot_Nodes(), and CMergeTree::x_Search_Recur().
int CEquivRange::MisMatches |
Definition at line 61 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::CalcMatches(), CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), and CMergeTree::x_Search_Recur().
vector<TSeqPos> CEquivRange::MisMatchSubjtPoints |
Definition at line 62 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::CalcMatches(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), and CEquivRangeBuilder::SliceOnSubjt().
Definition at line 56 of file equiv_range.hpp.
Referenced by AbuttingWith(), CEquivRangeBuilder::CalcMatches(), CalcRelative(), CalcRelativeDuo(), Empty(), CEquivRangeBuilder::ExtractRangesFromSeqAlign(), IntersectingWith(), CEquivRangeBuilder::Merge(), NotEmpty(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), CEquivRangeBuilder::SplitIntersections(), CMergeTree::x_Dot_Nodes(), and CMergeTree::x_EvalGap().
int CEquivRange::SegmtId |
Definition at line 65 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::MergeAbuttings(), CEquivRangeBuilder::SliceOnQuery(), and CEquivRangeBuilder::SliceOnSubjt().
int CEquivRange::SplitId |
Definition at line 66 of file equiv_range.hpp.
Referenced by CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), and CMergeTree::x_GetNode().
objects::ENa_strand CEquivRange::Strand |
Definition at line 58 of file equiv_range.hpp.
Referenced by AbuttingWith(), CEquivRangeBuilder::CalcMatches(), CalcRelative(), CalcRelativeDuo(), CEquivRangeBuilder::ExtractRangesFromSeqAlign(), CEquivRangeBuilder::Merge(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), and CMergeTree::x_Dot_Nodes().
Definition at line 57 of file equiv_range.hpp.
Referenced by AbuttingWith(), CEquivRangeBuilder::CalcMatches(), CalcRelative(), CalcRelativeDuo(), Empty(), CEquivRangeBuilder::ExtractRangesFromSeqAlign(), IntersectingWith(), CEquivRangeBuilder::Merge(), NotEmpty(), CEquivRangeBuilder::SliceOnQuery(), CEquivRangeBuilder::SliceOnSubjt(), CEquivRangeBuilder::SplitIntersections(), CMergeTree::x_Dot_Nodes(), and CMergeTree::x_EvalGap().