]> git.donarmstrong.com Git - mothur.git/blobdiff - filterseqscommand.h
removed read.dist, read.otu, read.tree and globaldata. added current to defaults...
[mothur.git] / filterseqscommand.h
index e8af5ec35c505d4b73875cee2fd1b3b78fb22b68..75e7895c6ef2d4a532dfae9d37ea4fc035243b75 100644 (file)
@@ -1,41 +1,66 @@
-#ifndef FILTERSEQSCOMMAND_H
-#define FILTERSEQSCOMMAND_H
-
-/*
- *  filterseqscommand.h
- *  Mothur
- *
- *  Created by Thomas Ryabin on 5/4/09.
- *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
- *
- */
-
-#include "command.hpp"
-#include "filters.h"
-
-class Sequence;
-class FilterSeqsCommand : public Command {
-
-public:
-       FilterSeqsCommand(string);
-       ~FilterSeqsCommand() {};
-       int execute();  
-       void help();
-       
-private:
-       string vertical, filter, fasta, hard, outputDir, filterFileName;
-       vector<string> fastafileNames;  
-       int alignmentLength;
-
-       char trump;
-       bool abort;
-       float soft;
-       int numSeqs;
-       
-       Filters F;
-               
-       vector<int> a, t, g, c, gap;
-
-};
-
-#endif
+#ifndef FILTERSEQSCOMMAND_H\r
+#define FILTERSEQSCOMMAND_H\r
+\r
+/*\r
+ *  filterseqscommand.h\r
+ *  Mothur\r
+ *\r
+ *  Created by Thomas Ryabin on 5/4/09.\r
+ *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.\r
+ *\r
+ */\r
+\r
+#include "command.hpp"\r
+#include "filters.h"\r
+\r
+class Sequence;\r
+class FilterSeqsCommand : public Command {\r
+\r
+public:\r
+       FilterSeqsCommand(string);\r
+       FilterSeqsCommand();\r
+       ~FilterSeqsCommand() {};\r
+       \r
+       vector<string> setParameters();\r
+       string getCommandName()                 { return "filter.seqs";                 }\r
+       string getCommandCategory()             { return "Sequence Processing"; }\r
+       string getHelpString(); \r
+       \r
+       int execute(); \r
+       void help() { m->mothurOut(getHelpString()); }  \r
+       \r
+private:\r
+       struct linePair {\r
+               unsigned long int start;\r
+               unsigned long int end;\r
+               linePair(unsigned long int i, unsigned long int j) : start(i), end(j) {}\r
+       };\r
+\r
+       vector<linePair*> lines;\r
+       vector<int> processIDS;\r
+\r
+       string vertical, filter, fasta, hard, outputDir, filterFileName;\r
+       vector<string> fastafileNames;  \r
+       int alignmentLength, processors;\r
+       vector<int> bufferSizes;\r
+       vector<string> outputNames;\r
+\r
+       char trump;\r
+       bool abort;\r
+       float soft;\r
+       int numSeqs;\r
+       \r
+       string createFilter();\r
+       int filterSequences();\r
+       int createProcessesCreateFilter(Filters&, string);\r
+       int createProcessesRunFilter(string, string);\r
+       int driverRunFilter(string, string, string, linePair*);\r
+       int driverCreateFilter(Filters& F, string filename, linePair* line);\r
+       #ifdef USE_MPI\r
+       int driverMPIRun(int, int, MPI_File&, MPI_File&, vector<unsigned long int>&);\r
+       int MPICreateFilter(int, int, Filters&, MPI_File&, vector<unsigned long int>&); \r
+       #endif\r
+       \r
+};\r
+\r
+#endif\r