eLastStatus = eOutOfMemory
173 voidSetInputMSAs(
constobjects::CSeq_align& msa1,
174 constobjects::CSeq_align& msa2,
182 constvector< CRef<objects::CSeq_loc> >&
GetQueries(
void)
const 183{
returnm_tQueries;}
256{
returnm_Clusterer.GetClusters();}
272FInterruptFn SetInterruptCallback(FInterruptFn fnptr,
273 void* user_data =
NULL);
284 constvector<string>&
GetMessages(
void)
const{
returnm_Messages;}
289 bool IsMessage(
void)
const{
return!m_Messages.empty();}
310 boolx_ValidateQueries(
void)
const;
315 boolx_ValidateInputMSAs(
void)
const;
321 boolx_ValidateUserHits(
void);
332vector<int>& indices);
342 voidx_CreatePatternQueries(vector<const CSequence*>& queries,
343vector<int>& indices);
353 constvector<int>& indices);
363 constvector<int>& indices);
371 voidx_FindLocalInClusterHits(
constvector<TPhyTreeNode*>& cluster_trees);
380 voidx_FindPatternHits(
constvector<const CSequence*>& queries,
381 constvector<int>& indices);
386 voidx_FindConsistentHitSubset(
void);
393 voidx_ComputeTree();
400 voidx_BuildAlignment();
407 boolx_FindQueryClusters();
411 voidx_AlignInClusters();
416 voidx_MakeClusterResidueFrequencies();
421 voidx_MultiAlignClusters();
427 voidx_ComputeClusterTrees(vector<TPhyTreeNode*>& trees);
436 voidx_AttachClusterTrees(
constvector<TPhyTreeNode*>& cluster_trees,
437 constvector<TPhyTreeNode*>& cluster_leaves);
448 voidx_BuildFullTree(
constvector<TPhyTreeNode*>& cluster_trees);
457 virtual voidx_Run(
void);
461 voidx_AlignMSAs(
void);
478 constvector<int>& indices,
479 constobjects::CBlast4_archive& archive);
490: seq_index(s), range(
r) {}
492: seq_index(s), range(from, to) {}
500 static const intkRpsScaleFactor = 100;
513: hit(h), list_pos(list_pos),
514path_next(0), best_score(0.0) {}
518 classcompare_sseg_db_idx;
524 return a.seq_index <
b.seq_index;
559fReduceBoth = fReduceLeft | fReduceRight
565 voidx_InitParams(
void);
568 voidx_InitAligner(
void);
580{m_Interrupt =
NULL;}
582 voidx_LoadBlockBoundaries(
stringblockfile,
583vector<SSegmentLoc>& blocklist);
585 constvector<int>& indices,
CHitList& rps_hits);
587 voidx_RealignBlocks(
CHitList& rps_hits,
588vector<SSegmentLoc>& blocklist,
590 voidx_AssignRPSResFreqs(
CHitList& rps_hits,
592 voidx_AssignDefaultResFreqs();
597vector<SSegmentLoc>& seg_list,
600 voidx_MakeFillerBlocks(
constvector<int>& indices,
602vector<SSegmentLoc>& filler_segs);
605 constvector<int>& indices,
607vector<SSegmentLoc>& filler_segs);
609 voidx_FindAlignmentSubsets();
610SGraphNode * x_FindBestPath(vector<SGraphNode>& nodes);
612 voidx_BuildAlignmentIterative(vector<CTree::STreeEdge>& edges,
613 doublecluster_cutoff);
614 voidx_FindConservedColumns(vector<CSequence>& new_alignment,
617vector<CSequence>& query_data,
619 intiteration,
boolis_cluster);
620 doublex_RealignSequences(
const TPhyTreeNode*input_cluster,
621vector<CSequence>& alignment,
626vector<CTree::STreeLeaf>& node_list2,
627vector<CSequence>& alignment,
636 voidx_AlignProfileProfileUsingHit(vector<CTree::STreeLeaf>& node_list1,
637vector<CTree::STreeLeaf>& node_list2,
638vector<CSequence>& alignment,
641 voidx_FindConstraints(vector<size_t>& constraint,
642vector<CSequence>& alignment,
643vector<CTree::STreeLeaf>& node_list1,
644vector<CTree::STreeLeaf>& node_list2,
647 voidx_FindInClusterConstraints(vector<CSequence>& alignment,
648vector<CTree::STreeLeaf>& node_list1,
649vector<CTree::STreeLeaf>& node_list2,
651vector<TRangePair>& match_ranges)
const;
652 doublex_GetScoreOneCol(vector<CSequence>& align,
654 doublex_GetScore(vector<CSequence>& align);
657vector<int>& indices)
const;
659 static voidx_InitColumn(vector<SColumn>::iterator& it,
size_t len);
661 static voidx_InitInsertColumn(vector<SColumn>::iterator& it,
size_t len,
662 intnum,
intcluster);
665vector<CSequence>& query_data,
666 constvector<TRange>& gaps);
668unique_ptr< vector<int> > x_AlignClusterQueries(
const TPhyTreeNode* node);
670 voidx_ComputeProfileRangeAlignment(
671vector<CTree::STreeLeaf>& node_list1,
672vector<CTree::STreeLeaf>& node_list2,
673vector<CSequence>& alignment,
674vector<size_t>& constraints,
676 intfull_prof_len1,
intfull_prof_len2,
677EEndGapCostStrategy strat,
747 static const intkClusterNodeId = 16000;
749 friendclass ::CMultiAlignerTest;
static CRef< CScope > m_Scope
User-defined methods of the data storage class.
User-defined methods of the data storage class.
Multiple aligner exceptions.
Interface for CHit class, used to encapsulate operations involving pairwise alignments.
Definitions used by all COBALT aligner components.
int TOffset
Basic data type for offsets into a sequence.
pair< string, biosample_util::EStatus > TStatus
Interface for CClusterer class used for clustering any type of data based on distance matrix.
vector< TSingleCluster > TClusters
An ordered collection of CHit objects.
A generalized representation of a pairwise alignment.
Test class for accessing CMultiAligner private attributes and methods.
bool operator()(const SSegmentLoc &a, const SSegmentLoc &b) const
Simultaneously align multiple protein sequences.
vector< CSequence > m_AllQueryData
EEndGapCostStrategy
Strategy for reducing end gap penalties for profile-profile alignment.
vector< vector< Uint4 > > m_ClusterGapPositions
CMultiAlignerOptions::EInClustAlnMethod m_ClustAlnMethod
SProgress m_ProgressMonitor
CRef< objects::CScope > m_Scope
CConstRef< CMultiAlignerOptions > GetOptions(void) const
Get mutli aligner parameters.
const vector< CSequence > & GetSeqResults(void) const
Retrieve the current aligned results in CSequence format.
const vector< CRef< objects::CSeq_loc > > & GetQueries(void) const
Get query sequences.
vector< int > m_Msa2Repr
Indices of sequence representatives in input alignment 2.
vector< CRef< objects::CSeq_loc > > m_tQueries
vector< CRef< objects::CSeq_loc > > m_AllQueries
CSparseKmerCounts TKmerCounts
const vector< string > & GetMessages(void) const
Get Error/Warning messages.
CHitList m_LocalInClusterHits
const TPhyTreeNode * GetTree(void) const
Get ree used guide in progressive alignment.
@ eOutOfMemory
Out of memory error.
@ eInternalError
Unexpected error occured.
@ eInterrupt
Alignment interruped through callback function.
@ eOptionsError
Error related to options occured.
@ eDatabaseError
Error related to RPS database occured.
@ eQueriesError
Error related to query sequences occured.
vector< CSequence > m_QueryData
const CClusterer::TClusters & GetQueryClusters(void) const
Get clusters of query sequences.
vector< bool > m_IsDomainSearched
Marks sequences with pre-computed domain hits.
TKmerMethods< TKmerCounts > TKMethods
vector< vector< TRange > > m_RPSLocs
vector< CSequence > m_InMSA1
Input alignment.
vector< CSequence > m_Results
CConstRef< CMultiAlignerOptions > m_Options
int GetScore(void) const
Get alignment score.
vector< string > m_Messages
CRef< objects::CScope > GetScope(void)
Get scope.
int m_Score
Alignment score.
void x_Init(void)
Initiate class attributes that are not alignment parameters.
pair< TRange, TRange > TRangePair
vector< int > m_Msa1Repr
Indices of sequence representatives in input alignment 1.
bool IsMessage(void) const
Check whether there are any error/warning messages.
vector< CSequence > m_InMSA2
Input alignment.
Represent databases of PSSM data and residue frequencies.
Kmer counts for alignment free sequence similarity computation implemented as a sparse vector.
definition of a Culling tree
A wrapper for controlling access to the phylogenetic tree generated by CDistMethods.
Interface for computing and manipulating k-mer counts vectors that allows for different implementatio...
Interface for CDistances class.
const Uint2 kMinorVersion
const Uint2 kMajorVersion
vector< ETranscriptSymbol > TTranscript
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
void Run(void)
Enter the main loop.
#define NCBI_COBALT_EXPORT
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
Interface for CHitList class.
int x_AlignProfileProfile(double **freq1_data, int freq1_size, double **freq2_data, int freq2_size, CPSSMAligner &aligner, bool local_alignment)
void x_SetScoreMatrix(const char *matrix_name, CPSSMAligner &aligner)
static const int kPatchVersion
Defines classes: CDirEntry, CFile, CDir, CSymLink, CMemoryFile, CFileUtil, CFileLock,...
double r(size_t dimension_, const Int4 *score_, const double *prob_, double theta_)
Options for CMultiAligner.
Interface for CProfileData.
Interface for CSequence class.
vector< SSeqLoc > TSeqLocVector
Vector of sequence locations.
Column in an alignment used for combining result from multiple alignment and pair-wise in-cluster ali...
int cluster
cluster index (inserted column only)
bool insert
Is the column an insertion from in-cluster alignment.
int number
number of letters in range (inserted column only)
vector< int > letters
Indices of letters in this column for regular column: index of a letter in input sequence (n-th lette...
double best_score
the score of that optimal path (assumes this node is the first entry in the path)
struct SGraphNode * path_next
the optimal path node belongs to
SGraphNode(CHit *h, int list_pos)
CHit * hit
the alignment represented by this node
Structure for reporting alignment progress.
SSegmentLoc(int s, TRange r)
SSegmentLoc(int s, TOffset from, TOffset to)
Interface for CTree class.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4