ignore_unsupported_options)
65m_IgnoreUnsupportedOptions(ignore_unsupported_options)
68 if(m_Request.Empty()) {
71 if(m_Request->CanGetBody() && !m_Request->GetBody().IsQueue_search() ) {
105 if(p.
NotEmpty() && p->CanGetValue()) {
107 m_Data->m_PsiNumOfIterations = p->GetValue().GetInteger();
111 m_Data->m_PsiNumOfIterations =
118 m_Data->m_OptionsHandle =
137 return m_Data->m_OptionsHandle;
146 return m_Data->m_PsiNumOfIterations;
161 return m_Request->GetBody().GetQueue_search().GetProgram();
176 return m_Data->m_QueryRange;
185 return m_Data->m_FilteringID;
194 return m_Data->m_FilteringKey;
205 return m_Data->m_SubjectMaskingType;
211 return m_Request->GetBody().GetQueue_search().GetService();
230objects::CBlast4_parameters*
241objects::CBlast4_parameters*
252objects::CBlast4_parameters*
268 if(program_opt !=
NULL) {
271list = b4_param->GetValue().GetInteger_list();
282 if(list.size() > 0) {
283rv.
insert(list.begin(), list.end());
294 if(list.size() > 0) {
295rv.
insert(list.begin(), list.end());
305m_ClientId(client_id)
313 const string& client_id,
314 unsigned intpsi_num_iterations)
316m_ClientId(client_id)
321 if(psi_num_iterations != 0)
328 const string& client_id)
330m_ClientId(client_id)
340 const string& client_id,
341 unsigned intpsi_num_iterations)
343m_ClientId(client_id)
348 if(psi_num_iterations != 0)
373 if(opts_handle.
Empty())
376 "Empty reference for CBlastOptionsHandle.");
386 "NULL argument specified: program");
392 "NULL argument specified: service");
399 if(
NULL== algo_opts )
402 "NULL argument specified: algo options");
413 "Empty reference for CSearchDatabase.");
419 "Error: No database specified");
429 if(!entrez_query_limit.empty())
435v->
SetString().assign(entrez_query_limit);
445 if(!gi_list_limit.empty())
447 #ifdef NCBI_STRICT_GI 448vector<Int8> int_gi_list;
449 ITERATE( vector<TGi>, it, gi_list_limit ) {
450int_gi_list.push_back(
GI_TO(
Int8, *it));
461 #ifdef NCBI_STRICT_TAX_ID 462vector<int> int_taxids;
463 ITERATE(vector<TTaxId>, it, taxids) {
464int_taxids.push_back(
TAX_ID_TO(
int, *it));
473 if(!neg_gi_list.empty())
475 #ifdef NCBI_STRICT_GI 476vector<Int8> int_gi_list;
477 ITERATE( vector<TGi>, it, neg_gi_list) {
478int_gi_list.push_back(
GI_TO(
Int8, *it));
489 #ifdef NCBI_STRICT_TAX_ID 490vector<int> int_taxids;
491 ITERATE(vector<TTaxId>, it, taxids) {
492int_taxids.push_back(
TAX_ID_TO(
int, *it));
530 "Empty reference for query pssm.");
536 stringpsi_program(
"blastp");
537 stringold_service(
"plain");
538 stringnew_service(
"psi");
539 stringdeltablast(
"delta_blast");
544 "PSI-Blast is only supported for blastp.");
552 string(
"PSI-Blast cannot also be ") +
568 "Error: No queries specified");
575 if(bioseq_set.
Empty() && seqloc_list.empty())
578 "Error: No query data.");
584 boolhas_local_ids =
false;
586 if(!seqloc_list.empty())
589 if(seqloc_list.front()->IsInt())
593 const intkRangeLength = kStop -
kStart+ 1;
599 const intkFullLength =
600bioseq_set->
GetSeq_set().front()->GetSeq().GetInst().GetLength();
602 if(kFullLength != kRangeLength)
613has_local_ids =
true;
620 if(
NULL!= objmgrqf )
623 if(!user_specified_masks.empty())
666 if(bioseq_set.
Empty())
669 "Error: No query data.");
672list< CRef<CBioseq> > bioseq_list;
686p->SetName(field.GetName());
697 constvector<int> & int_list)
700 copy(int_list.begin(), int_list.end(), back_inserter(tmp_list));
703p->SetName(field.GetName());
714 constvector<Int8> & int_list)
717 copy(int_list.begin(), int_list.end(), back_inserter(tmp_list));
720p->SetName(field.GetName());
735p->SetName(field.GetName());
@ eExtreme_Positional
numerical value
User-defined methods of the data storage class.
ESubjectMaskingType
Define the possible subject masking types.
Declares the CBlastOptionsBuilder class.
EBlastProgramType
Defines the engine's notion of the different applications of the BLAST algorithm.
const string & GetName() const
Get field name (key).
static CBlast4Field & Get(EBlastOptIdx opt)
CRef< CBlast4_parameter > GetParamByName(const string name) const
Returns Blast4_parameter with specified name.
CBlast4_queue_search_request â.
CBlast4_request_body â.
Defines BLAST error codes (user errors included)
Class to build CBlastOptionsHandle from blast4 ASN objects.
virtual void GetRemoteProgramAndService_Blast3(string &p, string &s) const
Get the program and service name for remote blast.
Class to return parts of the CBlast4_request, or data associated with a CBlast4_request,...
Thrown on an attempt to access wrong choice variant.
NCBI C++ Object Manager dependant implementation of IQueryFactory.
set< TTaxId > & GetTaxIdsList()
iterator_bool insert(const value_type &val)
const_iterator begin() const
const_iterator end() const
std::ofstream out("events_result.xml")
main entry point for tests
static const char * str(char *buf, int n)
string GetDatabaseName() const
Accessor for the database name.
unique_ptr< CBlastOptionsBuilder > m_OptionsBuilder
void x_Process_Query(CRef< IQueryFactory > &query)
void x_Process_Pssm(CRef< CPssmWithParameters > &pssm)
void x_AddPsiNumOfIterationsToFormatOptions(unsigned int num_iters)
void x_Process_SearchDb(CRef< CSearchDatabase > &db)
string GetDBFilteringKey()
The DB filter key.
string GetService() const
Fetches service, such as psiblast, plain, megablast.
unique_ptr< CImportStrategyData > m_Data
string GetCreatedBy() const
Returns ident field from a Blast4-request.
string GetTask()
Fetches task, such as "megablast", "blastn", etc.
int GetFilteringAlgorithm() const
Accessor for the filtering algorithm ID.
const TGiList GetNegativeGiListLimitation() const
const CRef< CSeqDBGiList > & GetNegativeGiList() const
Accessor for the negative gi list.
string GetFilteringAlgorithmKey() const
Accessor for the filtering algorithm key.
set< int > GetTaxidList()
objects::CBlast4_parameters * GetWebFormatOptions()
Options for controlling formatting (psi blast iteration number also).
static objects::CBlast4_get_search_results_reply::TMasks ConvertToRemoteMasks(const TSeqLocInfoVector &masking_locations, EBlastProgramType program, vector< string > *warnings=NULL)
Convert a TSeqLocInfoVector to a list< CRef<CBlast4_mask> > objects.
CBlastOptions & SetOptions()
Returns a reference to the internal options class which this object is a handle for.
list< CRef< objects::CSeq_loc > > TSeqLocs
Type definition for CSeq_loc set used as queries in the BLAST remote search class.
CExportStrategy(CRef< CBlastOptionsHandle > opts_handle, const string &client_id=kEmptyStr)
Construct search strategy with :-.
void x_Process_BlastOptions(CRef< CBlastOptionsHandle > &opts_handle)
CRef< objects::CBlast4_request > GetSearchStrategy(void)
void x_GetProgramOptionIntegerList(EBlastOptIdx idx, list< int > &list)
string GetProgram() const
Fetches program, one of blastn, blastp, blastx, tblastn, tblastx.
vector< TGi > TGiList
Define a list of gis.
void FlattenBioseqSet(const CBioseq_set &bss, list< CRef< CBioseq > > &seqs)
bool IsLocalId(const objects::CSeq_id *seqid)
Returns true if the CSeq_id is a local id.
const CBlastOptions & GetOptions() const
Return the object which this object is a handle for.
virtual CRef< objects::CBioseq_set > GetBioseqSet()=0
Accessor for the CBioseq_set.
int GetDBFilteringID()
The DB filter ID.
ESubjectMaskingType GetMaskType() const
set< int > GetNegativeTaxidList()
void ExportSearchStrategy_ASN1(CNcbiOstream *out)
bool m_IgnoreUnsupportedOptions
ignore unsupported options when creating blast options builder object
void x_AddParameterToProgramOptions(objects::CBlast4Field &field, const int int_value)
EBlastProgramType NetworkProgram2BlastProgramType(const string &program, const string &service)
Function to convert from program and service name into the CORE BLAST program type This is based on t...
TSeqLocInfoVector ExtractUserSpecifiedMasks()
Retrieve any user specified masking locations.
const CRef< CSeqDBGiList > & GetGiList() const
Accessor for the gi list.
static void Pssm(const objects::CPssmWithParameters &pssm, bool require_scores=false)
Perform validation on the PSSM.
void FetchData()
Fills in CImportStrategyData and m_OptionsBuilder.
const TGiList GetGiListLimitation() const
CRef< objects::CBlast4_queries > GetQueries()
The queries either as Bioseq, seqloc, or pssm.
unsigned int GetPsiNumOfIterations()
Get number of iteration for psi blast, return 0 if num of iterations not available.
objects::CBlast4_parameters * GetAlgoOptions()
Options specific to blast searches (e.g, threshold, expect value).
CRef< objects::CBlast4_subject > GetSubject()
Returns the target sequences.
objects::CBlast4_parameters * GetProgramOptions()
Options for controlling program execution and database filtering.
TSeqRange GetQueryRange()
The start and stop on the query (if applicable)
virtual TSeqLocs GetSeqLocs()=0
Accessor for the TSeqLocs.
CRef< CBlast4_queue_search_request > m_QueueSearchRequest
TBlast4Opts * GetBlast4AlgoOpts()
ESubjectMaskingType GetSubjectMaskingType()
Get Subject Masking Type.
string GetEntrezQueryLimitation() const
Accessor for the entrez query.
CRef< objects::CBlast4_request > m_Request
void x_Process_Subject(CRef< IQueryFactory > &subject)
CRef< blast::CBlastOptionsHandle > GetOptionsHandle()
Builds and returns the OptionsHandle.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define TAX_ID_TO(T, tax_id)
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
#define MSerial_AsnText
I/O stream manipulators â.
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.
int64_t Int8
8-byte (64-bit) signed integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define USING_SCOPE(ns)
Use the specified namespace.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
static int StringToInt(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to int.
@ fConvErr_NoThrow
Do not throw an exception on error.
void SetIdent(const TIdent &value)
Assign a value to Ident data member.
const TService & GetService(void) const
Get the Service member data.
const TFormat_options & GetFormat_options(void) const
Get the Format_options member data.
TQuery_mask & SetQuery_mask(void)
Select the variant.
void SetAlgorithm_options(TAlgorithm_options &value)
Assign a value to Algorithm_options data member.
void SetFormat_options(TFormat_options &value)
Assign a value to Format_options data member.
TInteger_list & SetInteger_list(void)
Select the variant.
void SetBody(TBody &value)
Assign a value to Body data member.
void SetQueries(TQueries &value)
Assign a value to Queries data member.
TSequences & SetSequences(void)
Select the variant.
TSeq_loc_list & SetSeq_loc_list(void)
Select the variant.
TBioseq_set & SetBioseq_set(void)
Select the variant.
bool CanGetProgram_options(void) const
Check if it is safe to call GetProgram_options method.
void SetService(const TService &value)
Assign a value to Service data member.
void SetProgram_options(TProgram_options &value)
Assign a value to Program_options data member.
TQueue_search & SetQueue_search(void)
Select the variant.
const TProgram_options & GetProgram_options(void) const
Get the Program_options member data.
void SetProgram(const TProgram &value)
Assign a value to Program data member.
TString & SetString(void)
Select the variant.
TBig_integer_list & SetBig_integer_list(void)
Select the variant.
void SetSubject(TSubject &value)
Assign a value to Subject data member.
bool CanGetFormat_options(void) const
Check if it is safe to call GetFormat_options method.
TInteger & SetInteger(void)
Select the variant.
list< CRef< CBlast4_mask > > TMasks
TPssm & SetPssm(void)
Select the variant.
const TAlgorithm_options & GetAlgorithm_options(void) const
Get the Algorithm_options member data.
const TProgram & GetProgram(void) const
Get the Program member data.
bool CanGetAlgorithm_options(void) const
Check if it is safe to call GetAlgorithm_options method.
TDatabase & SetDatabase(void)
Select the variant.
bool CanGetSeq_set(void) const
Check if it is safe to call GetSeq_set method.
const TSeq_set & GetSeq_set(void) const
Get the Seq_set member data.
unsigned int
A callback function used to compare two keys in a database.
Names used in blast4 network communications.
EBlastOptIdx
Index of remote BLAST options.
@ eBlastOpt_Web_StepNumber
@ eBlastOpt_NegativeTaxidList
@ eBlastOpt_DbFilteringAlgorithmKey
@ eBlastOpt_NegativeGiList
@ eBlastOpt_DbFilteringAlgorithmId
@ eBlastOpt_RequiredStart
@ eBlastOpt_SubjectMaskingType
void copy(Njn::Matrix< S > *matrix_, const Njn::Matrix< T > &matrix0_)
NOTE: This file contains work in progress and the APIs are likely to change, please do not rely on th...
Declarations of auxiliary functions/classes for PSI-BLAST.
Declares the CRemoteBlast class.
Declares the CImportStrategy and CExportStrategy.
vector< TMaskedQueryRegions > TSeqLocInfoVector
Collection of masked regions for all queries in a BLAST search.
This is the "mutable" data for CImportStrategy.
static string kStart("Start")
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