NCBI C++ ToolKit
|
#include <ncbi_pch.hpp>
#include <corelib/ncbistd.hpp>
#include <util/range.hpp>
#include <algo/align/util/genomic_compart.hpp>
#include <objects/seq/seq_id_handle.hpp>
#include <objects/seqalign/Dense_seg.hpp>
Go to the source code of this file.
Go to the SVN repository for this file.
Classes | |
struct | SRangesByStart |
struct | SRangesBySize |
struct | SRangesByScore |
struct | SRangesByPctIdent |
struct | SSeqAlignsBySize |
struct | SSeqAlignsByScore |
struct | SSeqAlignsByPctIdent |
struct | SRangeIteratorsByAddress |
struct | SCompartScore |
Typedefs | |
typedef pair< TSeqRange, TSeqRange > | TRange |
typedef pair< TRange, CRef< CSeq_align > > | TAlignRange |
typedef multiset< TAlignRange, SRangesByStart > | TAlignRangeMultiSet |
Functions | |
bool | IsIntersectingQuery (const pair< TSeqRange, TSeqRange > &r1, const pair< TSeqRange, TSeqRange > &r2) |
bool | IsIntersectingSubject (const pair< TSeqRange, TSeqRange > &r1, const pair< TSeqRange, TSeqRange > &r2) |
bool | IsConsistent (const pair< TSeqRange, TSeqRange > &r1, const pair< TSeqRange, TSeqRange > &r2, ENa_strand s1, ENa_strand s2) |
TSeqPos | Difference (const pair< TSeqRange, TSeqRange > &r1, const pair< TSeqRange, TSeqRange > &r2, ENa_strand s1, ENa_strand s2) |
void | FindCompartments (const list< CRef< CSeq_align > > &aligns, list< CRef< CSeq_align_set > > &align_sets, TCompartOptions options, float diff_len_filter) |
void | JoinCompartment (const CRef< CSeq_align_set > &compartment, float gap_ratio, list< CRef< CSeq_align > > &aligns) |
typedef pair<TRange, CRef<CSeq_align> > TAlignRange |
Definition at line 177 of file genomic_compart.cpp.
typedef multiset<TAlignRange, SRangesByStart> TAlignRangeMultiSet |
Definition at line 200 of file genomic_compart.cpp.
Definition at line 176 of file genomic_compart.cpp.
TSeqPos Difference | ( | const pair< TSeqRange, TSeqRange > & | r1, |
const pair< TSeqRange, TSeqRange > & | r2, | ||
ENa_strand | s1, | ||
ENa_strand | s2 | ||
) |
Definition at line 120 of file genomic_compart.cpp.
Referenced by FindCompartments().
void FindCompartments | ( | const list< CRef< CSeq_align > > & | aligns, |
list< CRef< CSeq_align_set > > & | align_sets, | ||
TCompartOptions | options, | ||
float | diff_len_filter | ||
) |
Definition at line 385 of file genomic_compart.cpp.
References set< Key, Compare >::begin(), count, Difference(), eNa_strand_minus, eNa_strand_plus, set< Key, Compare >::end(), fCompart_AllowInconsistentIntersection, fCompart_AllowIntersectionsBoth, fCompart_AllowIntersectionsQuery, fCompart_AllowIntersectionsSubject, fCompart_FilterByDiffLen, fCompart_SortByPctIdent, fCompart_SortByScore, CSeq_id_Handle::GetHandle(), hex(), i, set< Key, Compare >::insert(), int, IsConsistent(), IsIntersectingQuery(), IsIntersectingSubject(), ITERATE, kMax_Int, max(), min(), NON_CONST_ITERATE, r(), SCompartScore::Reset(), CRef< C, Locker >::Reset(), REVERSE_ITERATE, CSeq_align_set_Base::Set(), ct::sort(), swap(), SCompartScore::total_range, and SCompartScore::total_size.
Referenced by BOOST_AUTO_TEST_CASE(), CAdvancedAlignCleanup::GetGenomicCompartments(), CTestCompartApplication::Run(), CBLASTSeqToolJob::x_CreateProjectItems(), and CMergeAligner::x_MergeAlignments().
bool IsConsistent | ( | const pair< TSeqRange, TSeqRange > & | r1, |
const pair< TSeqRange, TSeqRange > & | r2, | ||
ENa_strand | s1, | ||
ENa_strand | s2 | ||
) |
Definition at line 82 of file genomic_compart.cpp.
References eNa_strand_minus, r1, r2, and SameOrientation().
Referenced by FindCompartments().
bool IsIntersectingQuery | ( | const pair< TSeqRange, TSeqRange > & | r1, |
const pair< TSeqRange, TSeqRange > & | r2 | ||
) |
Definition at line 46 of file genomic_compart.cpp.
Referenced by FindCompartments().
bool IsIntersectingSubject | ( | const pair< TSeqRange, TSeqRange > & | r1, |
const pair< TSeqRange, TSeqRange > & | r2 | ||
) |
Definition at line 64 of file genomic_compart.cpp.
Referenced by FindCompartments().
void JoinCompartment | ( | const CRef< CSeq_align_set > & | compartment, |
float | gap_ratio, | ||
list< CRef< CSeq_align > > & | aligns | ||
) |
Definition at line 876 of file genomic_compart.cpp.
References CSeq_align_Base::eType_disc, CSeq_align_set_Base::Get(), ITERATE, len, CRef< C, Locker >::Reset(), CSeq_align_set_Base::Set(), CSeq_align_Base::SetSegs(), and CSeq_align_Base::SetType().