NCBI C++ ToolKit
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
CCmdLineBlastXML2ReportData Class Reference

Search Toolkit Book for CCmdLineBlastXML2ReportData

Strategy class to gather the data for generating BLAST XML output. More...

#include <algo/blast/format/data4xml2format.hpp>

+ Inheritance diagram for CCmdLineBlastXML2ReportData:
+ Collaboration diagram for CCmdLineBlastXML2ReportData:

Public Member Functions

 CCmdLineBlastXML2ReportData (CConstRef< blast::CBlastSearchQuery > query, const blast::CSearchResults &results, CConstRef< blast::CBlastOptions > opts, CRef< objects::CScope > scope, const vector< align_format::CAlignFormatUtil::SDbInfo > &dbsInfo)
 Constructor db search. More...
 
 CCmdLineBlastXML2ReportData (CConstRef< blast::CBlastSearchQuery > query, const blast::CSearchResults &results, CConstRef< blast::CBlastOptions > opts, CRef< objects::CScope > scope, CConstRef< blast::IBlastSeqInfoSrc > subjectsInfo)
 Constructor bl2seq in db mode. More...
 
 CCmdLineBlastXML2ReportData (CConstRef< blast::CBlastSearchQuery > query, const blast::CSearchResultSet &resultSet, CConstRef< blast::CBlastOptions > opts, CRef< objects::CScope > scope, const vector< align_format::CAlignFormatUtil::SDbInfo > &dbsInfo)
 Constructor iterative db search. More...
 
 CCmdLineBlastXML2ReportData (CConstRef< blast::CBlastSearchQuery > query, const blast::CSearchResultSet &resultSet, CConstRef< blast::CBlastOptions > opts, CRef< objects::CScope > scope, CConstRef< blast::IBlastSeqInfoSrc > subjectsInfo)
 Constructor iterative bl2seq or bl2seq in orginal mode. More...
 
 ~CCmdLineBlastXML2ReportData ()
 Destructor. More...
 
string GetBlastProgramName (void) const
 @inheritDoc More...
 
blast::EProgram GetBlastTask (void) const
 @inheritDoc More...
 
string GetDatabaseName (void) const
 @inheritDoc More...
 
double GetEvalueThreshold (void) const
 @inheritDoc More...
 
int GetGapOpeningCost (void) const
 @inheritDoc More...
 
int GetGapExtensionCost (void) const
 @inheritDoc More...
 
int GetMatchReward (void) const
 @inheritDoc More...
 
int GetMismatchPenalty (void) const
 @inheritDoc More...
 
string GetPHIPattern (void) const
 Returns pattern string, for PHI BLAST search only. More...
 
string GetFilterString (void) const
 Returns filtering option string. More...
 
string GetMatrixName (void) const
 Returns matrix name. More...
 
CBlastFormattingMatrixGetMatrix (void) const
 Returns a 256x256 ASCII-alphabet matrix, needed for formatting. More...
 
CConstRef< objects::CSeq_loc > GetQuerySeqLoc (void) const
 
const TMaskedQueryRegionsGetMaskLocations (void) const
 Returns list of mask locations for a given query. More...
 
Int8 GetDbNumSeqs (void) const
 Returns number of database sequences. More...
 
Int8 GetDbLength (void) const
 Returns database length. More...
 
int GetLengthAdjustment (int num) const
 Returns length adjustment for a given query. More...
 
Int8 GetEffectiveSearchSpace (int num) const
 Returns effective search space for a given query. More...
 
double GetLambda (int num) const
 Returns Karlin-Altschul Lambda parameter for a given query. More...
 
double GetKappa (int num) const
 Returns Karlin-Altschul K parameter for a given query. More...
 
double GetEntropy (int num) const
 Returns Karlin-Altschul H parameter for a given query. More...
 
CRef< objects::CScope > GetScope () const
 Returns scope . More...
 
CConstRef< CSeq_align_setGetAlignmentSet (int num) const
 Returns a vector continaing set of alignments found for a given query. More...
 
int GetQueryGeneticCode () const
 master genetic code More...
 
int GetDbGeneticCode () const
 slave genetic code More...
 
string GetMessages (int num) const
 Get error messages. More...
 
bool CanGetTaxInfo (void) const
 
bool IsBl2seq (void) const
 
int GetNumOfSearchResults (void) const
 
list< stringGetSubjectIds (void) const
 
bool IsGappedSearch (void) const
 
int GetCompositionBasedStats (void) const
 
string GetBl2seqMode (void) const
 
bool IsIterativeSearch (void) const
 
string GetEntrezQuery (void) const
 
- Public Member Functions inherited from IBlastXML2ReportData
virtual ~IBlastXML2ReportData ()
 Our virtual destructor. More...
 

Private Member Functions

void x_FillScoreMatrix (const char *matrix_name=BLAST_DEFAULT_MATRIX)
 Initialize the score matrix to be used for formatting (if applicable) More...
 
void x_InitResults (const blast::CSearchResults &results)
 
void x_InitCommon (const blast::CSearchResults &results, CConstRef< blast::CBlastOptions > opts)
 
void x_InitDB (const vector< align_format::CAlignFormatUtil::SDbInfo > &dbsInfo)
 
void x_InitSubjects (CConstRef< blast::IBlastSeqInfoSrc > subjectsInfo)
 

Private Attributes

CConstRef< blast::CBlastSearchQuery > m_Query
 
CConstRef< blast::CBlastOptions > m_Options
 BLAST algorithm options. More...
 
CRef< objects::CScope > m_Scope
 
string m_DbName
 name of blast database More...
 
Int8 m_NumSequences
 Number of sequences in all BLAST databases involved in this search. More...
 
Int8 m_NumBases
 Number of bases in all BLAST databases involved in this search. More...
 
bool m_TaxDBFound
 
bool m_isBl2seq
 
bool m_isIterative
 
vector< CRef< blast::CBlastAncillaryData > > m_AncillaryData
 ancillary results data More...
 
vector< CConstRef< CSeq_align_set > > m_Alignments
 the alignments More...
 
vector< stringm_Errors
 Error messages. More...
 
CBlastFormattingMatrixm_Matrix
 Score matrix used to determine neighboring protein residues. More...
 
list< stringm_SubjectIds
 
TMaskedQueryRegions m_QueryMasks
 

Static Private Attributes

static const unsigned int kMatrixCols = 28
 Number of columns used in score matrices. More...
 

Detailed Description

Strategy class to gather the data for generating BLAST XML output.

Definition at line 52 of file data4xml2format.hpp.

Constructor & Destructor Documentation

◆ CCmdLineBlastXML2ReportData() [1/4]

CCmdLineBlastXML2ReportData::CCmdLineBlastXML2ReportData ( CConstRef< blast::CBlastSearchQuery >  query,
const blast::CSearchResults &  results,
CConstRef< blast::CBlastOptions >  opts,
CRef< objects::CScope >  scope,
const vector< align_format::CAlignFormatUtil::SDbInfo > &  dbsInfo 
)

Constructor db search.

Parameters
queryQuery sequences [in]
resultsresults set containing one query per element or one
optsBlast options container [in]
scopescope containing query and subject seqs [in]
dbsInfovector of SDbInfo containing db names and type [in]

◆ CCmdLineBlastXML2ReportData() [2/4]

CCmdLineBlastXML2ReportData::CCmdLineBlastXML2ReportData ( CConstRef< blast::CBlastSearchQuery >  query,
const blast::CSearchResults &  results,
CConstRef< blast::CBlastOptions >  opts,
CRef< objects::CScope >  scope,
CConstRef< blast::IBlastSeqInfoSrc >  subjectsInfo 
)

Constructor bl2seq in db mode.

Parameters
subjectsInfocontains bl2seq subjects info [in]

◆ CCmdLineBlastXML2ReportData() [3/4]

CCmdLineBlastXML2ReportData::CCmdLineBlastXML2ReportData ( CConstRef< blast::CBlastSearchQuery >  query,
const blast::CSearchResultSet &  resultSet,
CConstRef< blast::CBlastOptions >  opts,
CRef< objects::CScope >  scope,
const vector< align_format::CAlignFormatUtil::SDbInfo > &  dbsInfo 
)

Constructor iterative db search.

Parameters
resultSetcontaining results from all iteration [in]

◆ CCmdLineBlastXML2ReportData() [4/4]

CCmdLineBlastXML2ReportData::CCmdLineBlastXML2ReportData ( CConstRef< blast::CBlastSearchQuery >  query,
const blast::CSearchResultSet &  resultSet,
CConstRef< blast::CBlastOptions >  opts,
CRef< objects::CScope >  scope,
CConstRef< blast::IBlastSeqInfoSrc >  subjectsInfo 
)

Constructor iterative bl2seq or bl2seq in orginal mode.

Parameters
resultSetcontaining results from all iteration [in]

◆ ~CCmdLineBlastXML2ReportData()

CCmdLineBlastXML2ReportData::~CCmdLineBlastXML2ReportData ( )

Destructor.

Definition at line 186 of file data4xml2format.cpp.

References m_Matrix.

Member Function Documentation

◆ CanGetTaxInfo()

bool CCmdLineBlastXML2ReportData::CanGetTaxInfo ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 190 of file data4xml2format.hpp.

References m_TaxDBFound.

◆ GetAlignmentSet()

CConstRef< CSeq_align_set > CCmdLineBlastXML2ReportData::GetAlignmentSet ( int  num) const
virtual

Returns a vector continaing set of alignments found for a given query.

Implements IBlastXML2ReportData.

Definition at line 327 of file data4xml2format.cpp.

References eUnknown, m_Alignments, and NCBI_THROW.

◆ GetBl2seqMode()

string CCmdLineBlastXML2ReportData::GetBl2seqMode ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 202 of file data4xml2format.hpp.

References kEmptyStr.

◆ GetBlastProgramName()

string CCmdLineBlastXML2ReportData::GetBlastProgramName ( void  ) const
virtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 247 of file data4xml2format.cpp.

References Blast_ProgramNameFromType(), eDeltaBlast, and m_Options.

◆ GetBlastTask()

blast::EProgram CCmdLineBlastXML2ReportData::GetBlastTask ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 101 of file data4xml2format.hpp.

References m_Options.

◆ GetCompositionBasedStats()

int CCmdLineBlastXML2ReportData::GetCompositionBasedStats ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 200 of file data4xml2format.hpp.

References m_Options.

◆ GetDatabaseName()

string CCmdLineBlastXML2ReportData::GetDatabaseName ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 106 of file data4xml2format.hpp.

References m_DbName.

◆ GetDbGeneticCode()

int CCmdLineBlastXML2ReportData::GetDbGeneticCode ( ) const
virtual

slave genetic code

Implements IBlastXML2ReportData.

Definition at line 352 of file data4xml2format.cpp.

References Blast_SubjectIsTranslated(), and m_Options.

◆ GetDbLength()

Int8 CCmdLineBlastXML2ReportData::GetDbLength ( void  ) const
inlinevirtual

Returns database length.

Implements IBlastXML2ReportData.

Definition at line 164 of file data4xml2format.hpp.

References m_NumBases.

◆ GetDbNumSeqs()

Int8 CCmdLineBlastXML2ReportData::GetDbNumSeqs ( void  ) const
inlinevirtual

Returns number of database sequences.

Implements IBlastXML2ReportData.

Definition at line 160 of file data4xml2format.hpp.

References m_NumSequences.

◆ GetEffectiveSearchSpace()

Int8 CCmdLineBlastXML2ReportData::GetEffectiveSearchSpace ( int  num) const
virtual

Returns effective search space for a given query.

Implements IBlastXML2ReportData.

Definition at line 336 of file data4xml2format.cpp.

References eUnknown, m_AncillaryData, and NCBI_THROW.

◆ GetEntrezQuery()

string CCmdLineBlastXML2ReportData::GetEntrezQuery ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 205 of file data4xml2format.hpp.

References kEmptyStr.

◆ GetEntropy()

double CCmdLineBlastXML2ReportData::GetEntropy ( int  num) const
virtual

Returns Karlin-Altschul H parameter for a given query.

Implements IBlastXML2ReportData.

Definition at line 294 of file data4xml2format.cpp.

References eUnknown, Blast_KarlinBlk::H, m_AncillaryData, and NCBI_THROW.

◆ GetEvalueThreshold()

double CCmdLineBlastXML2ReportData::GetEvalueThreshold ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 109 of file data4xml2format.hpp.

References m_Options.

◆ GetFilterString()

string CCmdLineBlastXML2ReportData::GetFilterString ( void  ) const
inlinevirtual

Returns filtering option string.

Implements IBlastXML2ReportData.

Definition at line 138 of file data4xml2format.hpp.

References m_Options, NcbiEmptyString, NULL, string, and tmp.

◆ GetGapExtensionCost()

int CCmdLineBlastXML2ReportData::GetGapExtensionCost ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 119 of file data4xml2format.hpp.

References m_Options.

◆ GetGapOpeningCost()

int CCmdLineBlastXML2ReportData::GetGapOpeningCost ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 114 of file data4xml2format.hpp.

References m_Options.

◆ GetKappa()

double CCmdLineBlastXML2ReportData::GetKappa ( int  num) const
virtual

Returns Karlin-Altschul K parameter for a given query.

Implements IBlastXML2ReportData.

Definition at line 276 of file data4xml2format.cpp.

References eUnknown, Blast_KarlinBlk::K, m_AncillaryData, and NCBI_THROW.

◆ GetLambda()

double CCmdLineBlastXML2ReportData::GetLambda ( int  num) const
virtual

Returns Karlin-Altschul Lambda parameter for a given query.

Implements IBlastXML2ReportData.

Definition at line 258 of file data4xml2format.cpp.

References eUnknown, Blast_KarlinBlk::Lambda, m_AncillaryData, and NCBI_THROW.

◆ GetLengthAdjustment()

int CCmdLineBlastXML2ReportData::GetLengthAdjustment ( int  num) const
virtual

Returns length adjustment for a given query.

Implements IBlastXML2ReportData.

Definition at line 318 of file data4xml2format.cpp.

References eUnknown, m_AncillaryData, and NCBI_THROW.

◆ GetMaskLocations()

const TMaskedQueryRegions& CCmdLineBlastXML2ReportData::GetMaskLocations ( void  ) const
inlinevirtual

Returns list of mask locations for a given query.

Implements IBlastXML2ReportData.

Definition at line 156 of file data4xml2format.hpp.

References m_QueryMasks.

◆ GetMatchReward()

int CCmdLineBlastXML2ReportData::GetMatchReward ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 124 of file data4xml2format.hpp.

References m_Options.

◆ GetMatrix()

CBlastFormattingMatrix * CCmdLineBlastXML2ReportData::GetMatrix ( void  ) const
virtual

Returns a 256x256 ASCII-alphabet matrix, needed for formatting.

Implements IBlastXML2ReportData.

Definition at line 312 of file data4xml2format.cpp.

References m_Matrix.

◆ GetMatrixName()

string CCmdLineBlastXML2ReportData::GetMatrixName ( void  ) const
inlinevirtual

Returns matrix name.

Implements IBlastXML2ReportData.

Definition at line 144 of file data4xml2format.hpp.

References m_Options, NULL, string, and tmp.

◆ GetMessages()

string CCmdLineBlastXML2ReportData::GetMessages ( int  num) const
inlinevirtual

Get error messages.

Implements IBlastXML2ReportData.

Definition at line 188 of file data4xml2format.hpp.

References m_Errors.

◆ GetMismatchPenalty()

int CCmdLineBlastXML2ReportData::GetMismatchPenalty ( void  ) const
inlinevirtual

@inheritDoc

Implements IBlastXML2ReportData.

Definition at line 129 of file data4xml2format.hpp.

References m_Options.

◆ GetNumOfSearchResults()

int CCmdLineBlastXML2ReportData::GetNumOfSearchResults ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 194 of file data4xml2format.hpp.

References m_Alignments.

◆ GetPHIPattern()

string CCmdLineBlastXML2ReportData::GetPHIPattern ( void  ) const
inlinevirtual

Returns pattern string, for PHI BLAST search only.

Implements IBlastXML2ReportData.

Definition at line 133 of file data4xml2format.hpp.

References m_Options, NULL, string, and tmp.

◆ GetQueryGeneticCode()

int CCmdLineBlastXML2ReportData::GetQueryGeneticCode ( ) const
virtual

master genetic code

Implements IBlastXML2ReportData.

Definition at line 344 of file data4xml2format.cpp.

References Blast_QueryIsTranslated(), and m_Options.

◆ GetQuerySeqLoc()

CConstRef<objects::CSeq_loc> CCmdLineBlastXML2ReportData::GetQuerySeqLoc ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 151 of file data4xml2format.hpp.

References m_Query.

◆ GetScope()

CRef<objects::CScope> CCmdLineBlastXML2ReportData::GetScope ( ) const
inlinevirtual

Returns scope .

Implements IBlastXML2ReportData.

Definition at line 178 of file data4xml2format.hpp.

References m_Scope.

◆ GetSubjectIds()

list<string> CCmdLineBlastXML2ReportData::GetSubjectIds ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 196 of file data4xml2format.hpp.

References m_SubjectIds.

◆ IsBl2seq()

bool CCmdLineBlastXML2ReportData::IsBl2seq ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 192 of file data4xml2format.hpp.

References m_isBl2seq.

◆ IsGappedSearch()

bool CCmdLineBlastXML2ReportData::IsGappedSearch ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 198 of file data4xml2format.hpp.

References m_Options.

◆ IsIterativeSearch()

bool CCmdLineBlastXML2ReportData::IsIterativeSearch ( void  ) const
inlinevirtual

Implements IBlastXML2ReportData.

Definition at line 204 of file data4xml2format.hpp.

References m_isIterative.

◆ x_FillScoreMatrix()

void CCmdLineBlastXML2ReportData::x_FillScoreMatrix ( const char *  matrix_name = BLAST_DEFAULT_MATRIX)
private

Initialize the score matrix to be used for formatting (if applicable)

Parameters
matrix_nameName of score matrix. NULL defaults to BLOSUM62 [in]

Definition at line 194 of file data4xml2format.cpp.

References Blast_ProgramNameFromType(), i, kMatrixCols, m_Matrix, m_Options, NCBI_THROW, NCBISM_Blosum45, NCBISM_Blosum50, NCBISM_Blosum62, NCBISM_Blosum80, NCBISM_Blosum90, NCBISM_Identity, NCBISM_Pam250, NCBISM_Pam30, NCBISM_Pam70, NCBISM_Unpack(), NULL, SNCBIFullScoreMatrix::s, util::strcmp(), and tmp.

Referenced by x_InitCommon().

◆ x_InitCommon()

void CCmdLineBlastXML2ReportData::x_InitCommon ( const blast::CSearchResults &  results,
CConstRef< blast::CBlastOptions >  opts 
)
private

◆ x_InitDB()

void CCmdLineBlastXML2ReportData::x_InitDB ( const vector< align_format::CAlignFormatUtil::SDbInfo > &  dbsInfo)
private

Definition at line 157 of file data4xml2format.cpp.

References eUnknown, i, ITERATE, m_DbName, m_NumBases, m_NumSequences, and NCBI_THROW.

◆ x_InitResults()

void CCmdLineBlastXML2ReportData::x_InitResults ( const blast::CSearchResults &  results)
private

◆ x_InitSubjects()

void CCmdLineBlastXML2ReportData::x_InitSubjects ( CConstRef< blast::IBlastSeqInfoSrc >  subjectsInfo)
private

Member Data Documentation

◆ kMatrixCols

const unsigned int CCmdLineBlastXML2ReportData::kMatrixCols = 28
staticprivate

Number of columns used in score matrices.

Definition at line 231 of file data4xml2format.hpp.

Referenced by x_FillScoreMatrix().

◆ m_Alignments

vector<CConstRef<CSeq_align_set> > CCmdLineBlastXML2ReportData::m_Alignments
private

the alignments

Definition at line 226 of file data4xml2format.hpp.

Referenced by GetAlignmentSet(), GetNumOfSearchResults(), and x_InitResults().

◆ m_AncillaryData

vector<CRef<blast::CBlastAncillaryData> > CCmdLineBlastXML2ReportData::m_AncillaryData
private

ancillary results data

Definition at line 224 of file data4xml2format.hpp.

Referenced by GetEffectiveSearchSpace(), GetEntropy(), GetKappa(), GetLambda(), GetLengthAdjustment(), and x_InitResults().

◆ m_DbName

string CCmdLineBlastXML2ReportData::m_DbName
private

name of blast database

Definition at line 213 of file data4xml2format.hpp.

Referenced by GetDatabaseName(), and x_InitDB().

◆ m_Errors

vector<string> CCmdLineBlastXML2ReportData::m_Errors
private

Error messages.

Definition at line 228 of file data4xml2format.hpp.

Referenced by GetMessages(), and x_InitResults().

◆ m_isBl2seq

bool CCmdLineBlastXML2ReportData::m_isBl2seq
private

Definition at line 219 of file data4xml2format.hpp.

Referenced by IsBl2seq().

◆ m_isIterative

bool CCmdLineBlastXML2ReportData::m_isIterative
private

Definition at line 220 of file data4xml2format.hpp.

Referenced by IsIterativeSearch(), and x_InitCommon().

◆ m_Matrix

CBlastFormattingMatrix* CCmdLineBlastXML2ReportData::m_Matrix
private

Score matrix used to determine neighboring protein residues.

Definition at line 234 of file data4xml2format.hpp.

Referenced by GetMatrix(), x_FillScoreMatrix(), and ~CCmdLineBlastXML2ReportData().

◆ m_NumBases

Int8 CCmdLineBlastXML2ReportData::m_NumBases
private

Number of bases in all BLAST databases involved in this search.

Definition at line 217 of file data4xml2format.hpp.

Referenced by GetDbLength(), and x_InitDB().

◆ m_NumSequences

Int8 CCmdLineBlastXML2ReportData::m_NumSequences
private

Number of sequences in all BLAST databases involved in this search.

Definition at line 215 of file data4xml2format.hpp.

Referenced by GetDbNumSeqs(), and x_InitDB().

◆ m_Options

CConstRef<blast::CBlastOptions> CCmdLineBlastXML2ReportData::m_Options
private

◆ m_Query

CConstRef<blast::CBlastSearchQuery> CCmdLineBlastXML2ReportData::m_Query
private

Definition at line 209 of file data4xml2format.hpp.

Referenced by GetQuerySeqLoc().

◆ m_QueryMasks

TMaskedQueryRegions CCmdLineBlastXML2ReportData::m_QueryMasks
private

Definition at line 238 of file data4xml2format.hpp.

Referenced by GetMaskLocations().

◆ m_Scope

CRef<objects::CScope> CCmdLineBlastXML2ReportData::m_Scope
private

Definition at line 212 of file data4xml2format.hpp.

Referenced by GetScope(), and x_InitCommon().

◆ m_SubjectIds

list<string> CCmdLineBlastXML2ReportData::m_SubjectIds
private

Definition at line 236 of file data4xml2format.hpp.

Referenced by GetSubjectIds(), and x_InitSubjects().

◆ m_TaxDBFound

bool CCmdLineBlastXML2ReportData::m_TaxDBFound
private

Definition at line 218 of file data4xml2format.hpp.

Referenced by CanGetTaxInfo(), and x_InitCommon().


The documentation for this class was generated from the following files:
Modified on Thu Mar 28 17:08:23 2024 by modify_doxy.py rev. 669887