NCBI C++ ToolKit
kblastthr.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: kblastthr.hpp 78714 2017-07-13 12:19:48Z madden $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Author: Tom Madden
27  *
28  * File Description:
29  * Class to MT KMER BLAST searches
30  *
31  */
32 
43 #include <math.h>
44 
47 
52 
53 
56 USING_SCOPE(blast);
57 
58 /////////////////////////////////////////////////////////////////////////////
59 /// Threading class for BlastKmer searches.
60 /// Each thread runs a batch of input sequences
61 /// through KMER lookup and then through BLAST.
62 ////////////
63 class CBlastKmerThread : public CThread
64 {
65 public:
69  CRef<CFormattingArgs> fmtArgs,
71  CBlastAsyncFormatThread* formatThr,
72  Boolean believeQuery=false)
73  : m_Input(input),
74  m_DbArgs(db_args),
75  m_BlastOptsHandle(opts_handle),
76  m_FormattingArgs(fmtArgs),
78  m_FormattingThr(formatThr),
79  m_BelieveQuery(believeQuery)
80  {
81 
82  }
83 
84 protected:
85  virtual ~CBlastKmerThread(void);
86 
87  virtual void* Main(void);
88 private:
89 
91 
93 
95 
97 
99 
101 
103  // FIXME: needed?
105 };
106 
Produce formatted blast output for command line applications.
Interface for reading SRA sequences into blast input.
Interface for converting sources of sequence data into blast sequence input.
Declares the CBlastProteinOptionsHandle class.
Declares CBlastScopeSource class to create properly configured CScope objects to invoke the BLAST dat...
Run as separate thread and format results.
Generalized converter from an abstract source of biological sequence data to collections of blast inp...
Threading class for BlastKmer searches.
Definition: kblastthr.hpp:64
CNcbiOstream & m_OutFile
Definition: kblastthr.hpp:98
virtual void * Main(void)
Derived (user-created) class must provide a real thread function.
Definition: kblastthr.cpp:91
CRef< CBlastDatabaseArgs > m_DbArgs
Definition: kblastthr.hpp:92
CBlastKmerThread(CBlastInput &input, CRef< CBlastDatabaseArgs > db_args, CRef< CBlastpKmerOptionsHandle > opts_handle, CRef< CFormattingArgs > fmtArgs, CNcbiOstream &outfile, CBlastAsyncFormatThread *formatThr, Boolean believeQuery=false)
Definition: kblastthr.hpp:66
CFastMutex m_Guard
Definition: kblastthr.hpp:104
virtual ~CBlastKmerThread(void)
Definition: kblastthr.cpp:83
CBlastAsyncFormatThread * m_FormattingThr
Definition: kblastthr.hpp:100
CBlastInput & m_Input
Definition: kblastthr.hpp:90
Boolean m_BelieveQuery
Definition: kblastthr.hpp:102
CRef< CFormattingArgs > m_FormattingArgs
Definition: kblastthr.hpp:96
CRef< CBlastpKmerOptionsHandle > m_BlastOptsHandle
Definition: kblastthr.hpp:94
CFastMutex –.
Definition: ncbimtx.hpp:667
Operators to edit gaps in sequences.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
Definition: ncbistre.hpp:149
USING_SCOPE(objects)
USING_NCBI_SCOPE
Definition: kblastthr.hpp:54
static int input()
Main class to perform a BLAST search on the local machine.
Uint1 Boolean
bool replacment for C
Definition: ncbi_std.h:94
The Object manager core.
NOTE: This file contains work in progress and the APIs are likely to change, please do not rely on th...
static FILE * outfile
Definition: pcretest.c:1033
Defines BLAST database access classes.
Uniform BLAST Search Interface.
Modified on Mon Apr 22 04:05:25 2024 by modify_doxy.py rev. 669887