m_QueryOptions(query_opts),
59m_DatabaseArgs(db_args),
60m_FormattingArgs(fmt_args),
62m_OutUnalignedStream(unaligned_stream)
67 const boolkTrimReadIdForSAM =
80 _ASSERT(fr ==
false|| rf ==
false);
85 if(!only_specific && (fr || rf)) {
87 "-fr or -rf can only be used with SAM format." 88 " Use -oufmt sam option.");
94 if(only_specific && !(fr || rf)) {
96 "-only_strand_specific without either -fr or -rf " 107 boolisDone =
false;
132 if(!kDbName.empty()) {
164thread_db_adapter.
Reset(
175ostringstream the_unaligned_ostr;
176ostringstream& unaligned_ostr =
202*
results->GetFlatResults(kNoDiscordant));
237unaligned_ostr.str(
"");
241query_batch.
Reset();
CRef< CSearchDatabase > GetSearchDatabase() const
Retrieve the search database information.
CRef< IQueryFactory > GetSubjects(objects::CScope *scope=NULL)
Retrieve subject sequences, if provided.
string GetDatabaseName() const
Get the BLAST database name.
void GetNextSeqBatch(CBioseq_set &bioseq_set)
EOutputFormat GetFormattedOutputChoice() const
Get the choice of formatted output.
@ eTabular
Tabular output.
@ eAsnText
ASN.1 text output.
Interface to create a BlastSeqSrc suitable for use in CORE BLAST from a a variety of BLAST database/s...
CNcbiOstream * m_OutUnalignedStream
CRef< CBlastDatabaseArgs > m_DatabaseArgs
CNcbiOstream & m_OutStream
CRef< CMapperFormattingArgs > m_FormattingArgs
CMagicBlastThread(CBlastInputOMF &input, CRef< CMagicBlastOptionsHandle > options, CRef< CMapperQueryOptionsArgs > query_opts, CRef< CBlastDatabaseArgs > db_args, CRef< CMapperFormattingArgs > fmt_args, CNcbiOstream &out, CNcbiOstream *unaligned_stream)
CRef< CMapperQueryOptionsArgs > m_QueryOptions
virtual void * Main(void)
Derived (user-created) class must provide a real thread function.
CRef< CMagicBlastOptionsHandle > m_Options
bool TrimReadIds(void) const
Should read ids be in SAM format be trimmed of .1 and .2 endings for paired mapping.
const string & GetUserTag(void) const
Get a user tag added to each alignment.
bool SelectFwdRev(void) const
Specify fwd/ref strands.
EOutputFormat GetUnalignedOutputFormat(void) const
Get format choice for unaligned reads.
bool SelectRevFwd(void) const
Specify rev/fwd strands.
bool SelectOnlyStrandSpecific(void) const
Specify only-strand-specific.
bool PrintMdTag(void) const
Should MD tag be included in SAM report.
bool NoDiscordant(void) const
Should non-concordant pairs be filtered out of report.
bool PrintUnaligned(void) const
Should unaligned reads be reported.
bool IsPaired(void) const
Are query sequences paired.
NCBI C++ Object Manager free implementation of IQueryFactory.
void SetNumberOfThreads(int num_threads, bool force_mt=false)
Setting the number of threads.
std::ofstream out("events_result.xml")
main entry point for tests
void SetNegativeGiList(CSeqDBGiList *gilist)
Mutator for the negative gi list.
bool GetPaired() const
Are the mapping reads assumed paired.
CRef< CMagicBlastResultSet > RunEx(void)
const CRef< CSeqDBGiList > & GetNegativeGiList() const
Accessor for the negative gi list.
CRef< CSeqDB > GetSeqDb() const
Obtain a reference to the database.
CRef< ILocalQueryData > MakeLocalQueryData(const CBlastOptions *opts)
Creates and caches an ILocalQueryData.
virtual BlastQueryInfo * GetQueryInfo()=0
Accessor for the BlastQueryInfo structure.
const CBlastOptions & GetOptions() const
Return the object which this object is a handle for.
const CRef< CSeqDBGiList > & GetGiList() const
Accessor for the gi list.
bool GetSpliceAlignments() const
Return the splice/unsplice alignments switch value.
void SetGiList(CSeqDBGiList *gilist)
Mutator for the gi list.
@ eBlastDbIsNucleotide
nucleotide
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
TObjectType * GetNonNullPointer(void)
Get pointer value and throw a null pointer exception if pointer is null.
void Reset(void)
Reset reference object.
bool NotEmpty(void) const THROWS_NONE
Check if CRef is not empty â pointing to an object and has a non-null value.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
bool IsSetSeq_set(void) const
Check if a value has been assigned to Seq_set data member.
const TSeq_set & GetSeq_set(void) const
Get the Seq_set member data.
Declares CMagicBlast, the C++ API for the BLAST RNA-Seq mapping engine.
CNcbiOstream & PrintASN1(CNcbiOstream &ostr, const CBioseq_set &query_batch, CSeq_align_set &aligns)
static CNcbiOstream & PrintTabular(CNcbiOstream &ostr, const CSeq_align &align, const TQueryMap &queries, bool is_paired, int batch_number, int compartment, const string &user_tag, const CSeq_align *mate=NULL)
static CNcbiOstream & PrintSAM(CNcbiOstream &ostr, const CSeq_align &align, const TQueryMap &queries, const BlastQueryInfo *query_info, bool is_spliced, int batch_number, bool &first_secondary, bool &last_secondary, bool trim_read_ids, E_StrandSpecificity strand_specific, bool only_specific, bool print_md_tag, bool other=false, const string &user_tag="", const CSeq_align *mate=NULL)
NOTE: This file contains work in progress and the APIs are likely to change, please do not rely on th...
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