numSearches=
static_cast<int>(resultSet->GetNumQueries());
67 for(
intindex=0; index<numSearches; index++)
72 for(TBlastKmerScoreVector::const_iterator iter=scores.begin(); iter != scores.end(); ++iter)
82 if(oid_v.size() == 0)
85 sort(oid_v.begin(), oid_v.end());
87 for(vector<int>::iterator iter=oid_v.begin(); iter!=oid_v.end(); ++iter)
108vector< CConstRef<objects::CSeq_id> > seqid_vec;
109vector< CRef<CBlastAncillaryData> > ancill_vec;
113 unsigned intnum_subjects = 0;
117 if(subject_infosrc !=
NULL) {
118num_subjects =
static_cast<unsigned int>(subject_infosrc->
Size());
121 for(index=0; index<local_query_data->
GetNumQueries(); index++)
128seqid_vec.push_back(query_id);
130sa_vec.push_back(tmp_align);
131pair<double, double> tmp_pair(-1.0, -1.0);
133ancill_vec.push_back(tmp_ancillary_data);
135 for(
unsigned int i=1;
i< num_subjects;
i++)
138msg_vec.push_back(
msg);
139seqid_vec.push_back(query_id);
141sa_vec.push_back(tmp_align);
143ancill_vec.push_back(tmp_ancillary_data);
146msg_vec.resize(seqid_vec.size());
177blastkmer->SetGiListLimit(
m_GIList);
184vector< CRef<CScope> > scope_v = objmgr_qf->
ExtractScopes();
187 intnumSearches=
static_cast<int>(resultSet->GetNumQueries());
189 for(
intindex=0; index<numSearches; index++)
195 stringqueryId =
msg.GetQueryId();
196 for(TQueryMessages::const_iterator iter=
msg.begin(); iter !=
msg.end(); ++iter)
198cerr << queryId <<
" "<< (*iter)->GetMessage() <<
'\n';
203 if(scores.size() > 0)
206 results.GetTSL(subjectTSL, scope_v[0]);
209query_vector_temp.push_back(tsl_v[index]);
223query_vector_temp.push_back(tsl_v[index]);
229 msg.push_back(qmsg);
236 returnsearch_results;
Declares the CBlastAdvancedProteinOptionsHandle class.
Declares the CBlastProteinOptionsHandle class.
Declares CBlastScopeSource class to create properly configured CScope objects to invoke the BLAST dat...
BlastSeqSrc * BlastSeqSrcFree(BlastSeqSrc *seq_src)
Frees the BlastSeqSrc structure by invoking the destructor function set by the user-defined construct...
vector< CRef< objects::CSeq_align_set > > TSeqAlignVector
Vector of Seq-align-sets.
EResultType
Specifies the style of Seq-aligns that should be built from the internal BLAST data structures.
@ eDatabaseSearch
Seq-aligns in the style of a database search.
@ eSequenceComparison
Seq-aligns in the BLAST 2 Sequence style (one alignment per query-subject pair)
vector< pair< CRef< CSeq_id >, double > > TBlastKmerScoreVector
Vector of pairs of seq-ids and scores.
Class used to return ancillary data from a blast search, i.e.
Class of optiosn for the KMEr search.
void SetNumTargetSeqs(int matches)
Sets the number of matches (subject sequences) to return.
void SetThresh(double thresh)
Set the threshold.
void SetMinHits(int minhits)
Set the minimum number of LSH hits to initiate a calculation of the Jaccard distance.
This class represents the results for one KMER search (one query).
CRef< IQueryFactory > m_QueryFactory
Holds the query seqloc and scope.
CRef< CSeqDBNegativeList > m_NegGIList
Negative GIList to limit search by.
CRef< CSeqDBGiList > m_GIList
GIList to limit search by.
CRef< CBlastpKmerOptionsHandle > m_OptsHandle
Options for KMER search.
CRef< CLocalDbAdapter > m_Database
Database to search.
CRef< CSearchResultSet > Run(void)
Run a KMER and then BLAST search.
Class to perform a KMER-BLASTP search.
Encapsulates ALL the BLAST algorithm's options.
Handle to the KMER BLASTP options.
Class to perform a BLAST search on local BLAST databases Note that PHI-BLAST can be run using this cl...
NCBI C++ Object Manager dependant implementation of IQueryFactory.
Search Results for All Queries.
Uint8 GetTotalLength() const
Returns the sum of the lengths of all available sequences.
bool SeqidToOid(const CSeq_id &seqid, int &oid) const
Translate a Seq-id to any matching OID.
CRef< CBioseq > GetBioseq(int oid, TGi target_gi=ZERO_GI, const CSeq_id *target_seq_id=NULL) const
Get a CBioseq for a sequence.
void SetNumberOfThreads(int num_threads, bool force_mt=false)
Setting the number of threads.
bool GiToOid(TGi gi, int &oid) const
Translate a GI to an OID.
Implementation of the IBlastSeqInfoSrc interface to encapsulate retrieval of sequence identifiers and...
Abstract base class to encapsulate retrieval of sequence identifiers.
Class for the messages for an individual query sequence.
typedef for the messages for an entire BLAST search, which could be comprised of multiple query seque...
virtual CConstRef< objects::CSeq_loc > GetSeq_loc(size_t index)=0
Get the Seq_loc for the sequence indicated by index.
string GetDatabaseName() const
Returns the database name if appropriate, else kEmptyStr for subject sequences.
const_iterator begin() const
Returns const_iterator to beginning of container, provided to facilitate STL-style iteration.
void SetDbLength(Int8 len)
Sets DbLength.
int GetCandidateSeqs() const
Gets the max number of candidate matches to process with BLAST.
Int8 GetDbLength() const
Returns DbLength.
TSeqLocVector GetTSeqLocVector()
Retrieves the TSeqLocVector used to construct this object or a conversion of the CBlastQueryVector pr...
int GetMinHits() const
Returns the number of hits to initiate calculation of Jaccard distance.
CRef< CSearchResultSet > Run()
Executes the search.
CRef< ILocalQueryData > MakeLocalQueryData(const CBlastOptions *opts)
Creates and caches an ILocalQueryData.
bool IsBlastDb() const
Returns true if this object represents a BLAST database.
BlastSeqSrc * MultiSeqBlastSeqSrcInit(TSeqLocVector &seq_vector, EBlastProgramType program, bool dbscan_mode=false)
Initialize the sequence source structure.
const CBlastOptions & GetOptions() const
Return the object which this object is a handle for.
IBlastSeqInfoSrc * MakeSeqInfoSrc()
Retrieves or constructs the IBlastSeqInfoSrc.
vector< value_type >::iterator iterator
iterator type definition
virtual size_t GetNumQueries()=0
Get the number of queries.
virtual size_t Size() const =0
Returns the size of the underlying container of sequences.
void push_back(value_type &element)
Add a value to the back of this container.
vector< CRef< objects::CScope > > ExtractScopes()
Retrieve the CScope objects associated with the query sequences associated with this object.
const_iterator end() const
Returns const_iterator to end of container, provided to facilitate STL-style iteration.
double GetThresh() const
Returns threshold for Jaccard distance (range: 0-1)
bool IsDbScanMode() const
Returns true if this is not a database but is database scanning mode.
CBioseq_Handle AddBioseq(CBioseq &bioseq, TPriority pri=kPriority_Default, EExist action=eExist_Throw)
Add bioseq, return bioseq handle.
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
bool NotEmpty(void) const THROWS_NONE
Check if CRef is not empty â pointing to an object and has a non-null value.
bool Empty(void) const THROWS_NONE
Check if CRef is empty â not pointing to any object, which means having a null value.
TGi GetGi(void) const
Get the variant data.
bool IsGi(void) const
Check if variant Gi is selected.
CRef< CSearchResultSet > s_MakeEmptyResults(CRef< IQueryFactory > qf, const CBlastOptions &opts, CRef< CLocalDbAdapter > dbAdapter, TSearchMessages &msg_vec)
static void s_GetSequencesIntoScope(CRef< CBlastKmerResultsSet > resultSet, CRef< CScope > scope, CRef< CSeqDB > seqdb)
Places all the needed subject sequences into a scope.
void s_AddNewResultSet(CRef< CSearchResultSet > resultSet, CRef< CSearchResultSet > myResultSet)
Main class to perform a BLAST search on the local machine.
constexpr auto sort(_Init &&init)
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
NOTE: This file contains work in progress and the APIs are likely to change, please do not rely on th...
Defines BLAST database access classes.
Defines a concrete strategy for the IBlastSeqInfoSrc interface for sequence identifiers retrieval fro...
Implementation of the BlastSeqSrc interface for a vector of sequence locations.
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
vector< SSeqLoc > TSeqLocVector
Vector of sequence locations.
Complete type definition of Blast Sequence Source ADT.
Uniform BLAST Search Interface.
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