NCBI C++ ToolKit
|
#include <corelib/ncbistd.hpp>
#include <corelib/ncbiobj.hpp>
#include <objtools/alnmgr/pairwise_aln.hpp>
#include <objtools/alnmgr/aln_stats.hpp>
#include <objtools/alnmgr/aln_user_options.hpp>
Go to the source code of this file.
Go to the SVN repository for this file.
Functions | |
void | MergePairwiseAlns (CPairwiseAln &existing, const CPairwiseAln &addition, const CAlnUserOptions::TMergeFlags &flags) |
Merge two pariwise alignments. More... | |
void | SortAnchoredAlnVecByScore (TAnchoredAlnVec &anchored_aln_vec) |
Sort anchored alignments by score. More... | |
void | BuildAln (TAnchoredAlnVec &in_alns, CAnchoredAln &out_aln, const CAlnUserOptions &options, TAlnSeqIdIRef pseudo_seqid=TAlnSeqIdIRef()) |
Build anchored alignment from a set of alignmnets. More... | |
void BuildAln | ( | TAnchoredAlnVec & | in_alns, |
CAnchoredAln & | out_aln, | ||
const CAlnUserOptions & | options, | ||
TAlnSeqIdIRef | pseudo_seqid = TAlnSeqIdIRef() |
||
) |
Build anchored alignment from a set of alignmnets.
The input alignments are merged (according to the options), a new pseudo-sequence is used to provide alignment coordinates.
in_alns | Input Alignments (will be sorted by score unless fSkipSortByScore is raised). |
out_aln | Ouput anchored alignment. |
options | Options for merging input alignments. |
pseudo_seqid | User-created seq-id of the pseudo alignment sequence. If null, a new local, time-stamped seq-id will be automatically generated. |
Definition at line 549 of file aln_builders.cpp.
References _ASSERT, BuildAln(), CTime::eCurrent, CAlnUserOptions::eMergeAllSeqs, CRef< C, Locker >::Empty(), CAlnUserOptions::ePreserveRows, CAlnUserOptions::eQuerySeqMergeOnly, CAlnUserOptions::fAllowMixedStrand, CAlnUserOptions::fAnchorRowFirst, flags, CAlnUserOptions::fSkipSortByScore, CAlnUserOptions::fTruncateOverlaps, CAlnUserOptions::fUseAnchorAsAlnSeq, AutoPtr< X, Del >::get(), CAnchoredAln::GetAnchorRow(), CAnchoredAln::GetDim(), CAnchoredAln::GetId(), CAnchoredAln::GetPairwiseAlns(), ITERATE, CAlnUserOptions::m_MergeAlgo, CAlnUserOptions::m_MergeFlags, MergePairwiseAlns(), NCBI_THROW, NON_CONST_ITERATE, CRef< C, Locker >::Reset(), row, s_TranslateToAlnCoords(), CAnchoredAln::SetAnchorRow(), CAnchoredAln::SetPairwiseAlns(), SortAnchoredAlnVecByScore(), and x_AdjustAnchorDirection().
Referenced by BOOST_AUTO_TEST_CASE(), CBuildSparseAlnJob::Build(), BuildAlignDataSource(), CAlnSpanVertModel::CAlnSpanVertModel(), CAlnBuildApp::Run(), CAlnTestApp::Run(), CAlignCleanup::x_Cleanup_AnchoredAln(), CMergeAlignmentsJob::x_CreateProjectItems(), CTreeBuilderJob::x_CreateProjectItems(), and CValidError_align::x_ValidateAlignPercentIdentity().
void MergePairwiseAlns | ( | CPairwiseAln & | existing, |
const CPairwiseAln & | addition, | ||
const CAlnUserOptions::TMergeFlags & | flags | ||
) |
Merge two pariwise alignments.
existing | Source and destination pairwise alignment. |
addition | Alignment to be added to to first one. |
flags | Merge options. |
Definition at line 49 of file aln_builders.cpp.
References CAlignRangeCollectionList< TAlnRange >::AddInsertions(), CAlignRangeCollectionList< TAlnRange >::fAllowAbutting, CAlignRangeCollectionList< TAlnRange >::fAllowMixedDir, CAlignRangeCollectionList< TAlnRange >::fAllowOverlap, CAlnUserOptions::fIgnoreInsertions, flags, CPairwiseAln::GetFirstId(), CAlignRangeCollectionList< TAlnRange >::GetInsertions(), CAlignRangeCollectionList< TAlnRange >::GetPolicyFlags(), CPairwiseAln::GetSecondId(), CAlignRangeCollectionList< TAlnRange >::insert(), ITERATE, and SubtractAlnRngCollections().
Referenced by BuildAln().
void SortAnchoredAlnVecByScore | ( | TAnchoredAlnVec & | anchored_aln_vec | ) |
Sort anchored alignments by score.
Definition at line 332 of file aln_builders.cpp.
References ct::sort().
Referenced by BuildAln().