34 #ifndef ALGO_BLAST_API___BLAST_NODE__HPP
35 #define ALGO_BLAST_API___BLAST_NODE__HPP
69 if (! m_MsgQueue.empty()){
70 rv.
Reset(m_MsgQueue.front());
71 m_MsgQueue.pop_front();
115 void SetDataLoaderPrefix();
141 int GetNumNodes() {
return static_cast<int>(m_RegisteredNodes.size());}
147 if ((m_MaxNumNodes < 0) && (m_RegisteredNodes.size() == 0)){
152 void FormatResults();
159 void x_WaitForNewEvent();
182 CStreamLineReader(is), m_QueryBatchSize(batch_size), m_EstAvgQueryLength(est_avg_len), m_QueryCount(0) {}
184 int GetQueryBatch(
string & queries,
int & query_no);
Contains C++ wrapper classes to structures in algo/blast/core as well as some auxiliary functions to ...
Defines to provide correct exporting from BLAST DLL in Windows.
#define NCBI_XBLAST_EXPORT
NULL operations for other cases.
Class to capture message from diag handler.
TActiveNodes m_ActiveNodes
CConditionVariable m_NewEvent
map< int, CRef< CBlastNode > > TRegisteredNodes
CConditionVariable & GetBuzzer()
map< int, CRef< CBlastNodeMailbox > > TPostOffice
map< int, CRef< CBlastNodeMsg > > TFormatQueue
TRegisteredNodes m_RegisteredNodes
map< int, double > TActiveNodes
TFormatQueue m_FormatQueue
CNcbiOstream & m_OutputStream
list< CRef< CBlastNodeMsg > > m_MsgQueue
void UnreadMsg(CRef< CBlastNodeMsg > msg)
CBlastNodeMailbox(int node_num, CConditionVariable ¬ify)
CConditionVariable & m_Notify
CRef< CBlastNodeMsg > ReadMsg()
CBlastNodeMsg(EMsgType type, void *obj_ptr)
virtual int GetBlastResults(CNcbiOstream &os)=0
string m_DataLoaderPrefix
virtual void * Main(void)=0
Derived (user-created) class must provide a real thread function.
CBlastAppDiagHandler & m_Bah
CRef< CBlastNodeMailbox > m_Mailbox
CBlastAppDiagHandler & GetDiagHandler()
const CNcbiArguments & m_NcbiArgs
const CNcbiArguments & GetArguments()
void SetState(EState state)
void SetQueriesLength(int l)
void SetStatus(int status)
Simple implementation of ILineReader for i(o)streams.
void Reset(void)
Reset reference object.
int64_t Int8
8-byte (64-bit) signed integer
#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.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.