]> git.donarmstrong.com Git - mothur.git/blobdiff - chimeraslayercommand.h
added count file to get.oturep, pre.cluster, screen.seqs, tree.shared. made remove...
[mothur.git] / chimeraslayercommand.h
index 6f3455debc4b6f161102a7bd2a75e797d3c639f0..93adb7bf53b280892715411c66aedcf15b5c0df3 100644 (file)
@@ -15,6 +15,7 @@
 #include "chimera.h"
 #include "chimeraslayer.h"
 #include "sequenceparser.h"
+#include "sequencecountparser.h"
 
 /***********************************************************/
 
@@ -27,6 +28,7 @@ public:
        vector<string> setParameters();
        string getCommandName()                 { return "chimera.slayer";              }
        string getCommandCategory()             { return "Sequence Processing"; }
+       string getOutputFileNameTag(string, string);
        string getHelpString(); 
        string getCitation() { return "Haas BJ, Gevers D, Earl A, Feldgarden M, Ward DV, Giannokous G, Ciulla D, Tabbaa D, Highlander SK, Sodergren E, Methe B, Desantis TZ, Petrosino JF, Knight R, Birren BW (2011). Chimeric 16S rRNA sequence formation and detection in Sanger and 454-pyrosequenced PCR amplicons. Genome Res. \nhttp://www.mothur.org/wiki/Chimera.slayer"; }
        string getDescription()         { return "detect chimeric sequences"; }
@@ -50,12 +52,14 @@ private:
        int divideInHalf(Sequence, string&, string&);
        map<string, int> sortFastaFile(string, string);
        map<string, int> sortFastaFile(vector<Sequence>&, map<string, string>&, string newFile);
+    int sortFastaFile(vector<Sequence>&, map<string, int>&, string newFile);
        string getNamesFile(string&);
        //int setupChimera(string,);
        int MPIExecute(string, string, string, string, map<string, int>&);
-       int deconvoluteResults(SequenceParser*, string, string, string);
+       int deconvoluteResults(map<string, string>&, string, string, string);
        map<string, int> priority;
        int setUpForSelfReference(SequenceParser*&, map<string, string>&, map<string, map<string, int> >&, int);
+    int setUpForSelfReference(SequenceCountParser*&, map<string, string>&, map<string, map<string, int> >&, int);
        int driverGroups(string, string, string, map<string, map<string, int> >&, map<string, string>&);
        int createProcessesGroups(string, string, string, map<string, map<string, int> >&, map<string, string>&);
        int MPIExecuteGroups(string, string, string, map<string, map<string, int> >&, map<string, string>&);
@@ -65,8 +69,8 @@ private:
        int driverMPI(int, int, MPI_File&, MPI_File&, MPI_File&, MPI_File&, vector<unsigned long long>&, string, map<string, int>&, bool);
        #endif
 
-       bool abort, realign, trim, trimera, save;
-       string fastafile, groupfile, templatefile, outputDir, search, namefile, blastlocation;
+       bool abort, realign, trim, trimera, save, hasName, hasCount;
+       string fastafile, groupfile, templatefile, outputDir, search, namefile, countfile, blastlocation;
        int processors, window, iters, increment, numwanted, ksize, match, mismatch, parents, minSimilarity, minCoverage, minBS, minSNP, numSeqs, templateSeqsLength;
        float divR;
        
@@ -172,7 +176,7 @@ struct slayerData {
 };
 
 /**************************************************************************************************/
-#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
 #else
 static DWORD WINAPI MySlayerThreadFunction(LPVOID lpParam){ 
        slayerData* pDataArray;