X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=chimeraslayer.h;h=ded0f89b1cb57c88c66777405d1c0d8de9df088d;hb=1b49ed179327150ebf24d77b33d9b3e6872cc8c0;hp=f8006c41382919b311e8fd8b590f31e9b8bfaad1;hpb=e72551c9cc5542e6a354f0f3e415fea261421d72;p=mothur.git diff --git a/chimeraslayer.h b/chimeraslayer.h index f8006c4..ded0f89 100644 --- a/chimeraslayer.h +++ b/chimeraslayer.h @@ -15,34 +15,56 @@ #include "maligner.h" #include "slayer.h" -/***********************************************************************/ +//***********************************************************************/ //This class was modeled after the chimeraSlayer written by the Broad Institute /***********************************************************************/ - class ChimeraSlayer : public Chimera { public: - ChimeraSlayer(string, bool); + ChimeraSlayer(string, string, bool, string, int, int, int, int, float, int, int, int, int, int, int, int, int, bool); + ChimeraSlayer(string, string, bool, map&, string, int, int, int, int, float, int, int, int, int, int, int, int, int, bool); + ~ChimeraSlayer(); int getChimeras(Sequence*); - void print(ostream&); + Sequence* print(ostream&, ostream&); + Sequence* print(ostream&, ostream&, data_results, data_results); void printHeader(ostream&); + int doPrep(); + data_results getResults() { return printResults; } + + #ifdef USE_MPI + Sequence* print(MPI_File&, MPI_File&); + Sequence* print(MPI_File&, MPI_File&, data_results, data_results); + #endif private: Sequence* querySeq; + Sequence trimQuery; DeCalculator* decalc; - Maligner* maligner; - Slayer* slayer; - map spotMap; - + Database* databaseRight; + Database* databaseLeft; + map priority; //for template=self, seqname, seqAligned, abundance + set chimericSeqs; //for template=self, so we don't add chimeric sequences to the userTemplate set + vector chimeraResults; - string chimeraFlags, searchMethod; - string fastafile; - bool realign; + data_results printResults; + string chimeraFlags, searchMethod, fastafile; + bool realign, trimChimera; + int window, numWanted, kmerSize, match, misMatch, minSim, minCov, minBS, minSNP, parents, iters, increment; + float divR; - void printBlock(data_struct, ostream&); + void printBlock(data_struct, string, ostream&); + void printBlock(data_results, data_results, bool, bool, string, ostream&); + string getBlock(data_struct, string); + string getBlock(data_results, data_results, bool, bool, string); + //int readNameFile(string); + vector getTemplate(Sequence*, vector&); + vector getRefSeqs(Sequence*, vector&, vector&); + vector getBlastSeqs(Sequence*, vector&, int); + vector getKmerSeqs(Sequence*, vector&, int); + }; /************************************************************************/