]> git.donarmstrong.com Git - mothur.git/blobdiff - sffmultiplecommand.h
sffinfo bug with flow grams right index when clipQualRight=0
[mothur.git] / sffmultiplecommand.h
index ae881aa7fcacb2aab09224d204f301db0531fa35..ee83d727ad3b3a1e910f4b3cb633eae53938f87a 100644 (file)
 //
 
 #include "command.hpp"
+#include "sffinfocommand.h"
+#include "seqsummarycommand.h"
+#include "trimflowscommand.h"
+#include "shhhercommand.h"
+#include "trimseqscommand.h"
 
 class SffMultipleCommand : public Command {
        
@@ -21,8 +26,9 @@ public:
        vector<string> setParameters();
        string getCommandName()                 { return "sff.multiple";                        }
        string getCommandCategory()             { return "Sequence Processing";         }
-       string getOutputFileNameTag(string, string);
+       
        string getHelpString(); 
+    string getOutputPattern(string);   
        string getCitation() { return "http://www.mothur.org/wiki/Sff.multiple"; }
        string getDescription()         { return "run multiple sff files through, sffinfo, trim.flow, shhh.flows and trim.seqs combining the results"; }
     
@@ -30,16 +36,28 @@ public:
        void help() { m->mothurOut(getHelpString()); }  
        
 private:
-       string filename, outputDir, flowOrder;
+    
+    struct linePair {
+               int start;
+               int end;
+               linePair(int i, int j) : start(i), end(j) {}
+       };
+
+       string filename, outputDir, flowOrder, lookupFileName, minDelta;
        vector<string> outputNames;
-       bool abort, trim;
-       int maxFlows, minFlows, minLength, maxLength, maxHomoP, tdiffs, bdiffs, pdiffs, sdiffs, ldiffs, numLinkers, numSpacers;
-       int numFlows, numFPrimers, numRPrimers, processors;
-       float signal, noise;
+       bool abort, trim, large, flip, allFiles, keepforward, append, makeGroup;
+       int maxFlows, minFlows, minLength, maxLength, maxHomoP, tdiffs, bdiffs, pdiffs, sdiffs, ldiffs;
+       int processors, maxIters, largeSize;
+       float signal, noise, cutoff, sigma;
+    int keepFirst, removeLast, maxAmbig;
     
     int readFile(vector<string>& sffFiles, vector<string>& oligosFiles);
+    int createProcesses(vector<string> sffFiles, vector<string> oligosFiles, string, string, string);
+    int driver(vector<string> sffFiles, vector<string> oligosFiles, int start, int end, string, string, string);
+    int mergeOutputFileList(map<string, vector<string> >& files, map<string, vector<string> >& temp);
+
+
     
 };
 
-
 #endif