]> git.donarmstrong.com Git - mothur.git/blobdiff - pipelinepdscommand.h
added pipeline commands which involved change to command factory and command class...
[mothur.git] / pipelinepdscommand.h
diff --git a/pipelinepdscommand.h b/pipelinepdscommand.h
new file mode 100644 (file)
index 0000000..8a8a195
--- /dev/null
@@ -0,0 +1,52 @@
+#ifndef PIPELINEPDSCOMMAND_H
+#define PIPELINEPDSCOMMAND_H
+
+/*
+ *  pipelinepdscommand.h
+ *  Mothur
+ *
+ *  Created by westcott on 10/5/10.
+ *  Copyright 2010 Schloss Lab. All rights reserved.
+ *
+ */
+
+
+#include "command.hpp"
+#include "commandfactory.hpp"
+
+/****************************************************/
+
+class PipelineCommand : public Command {
+       
+public:
+       PipelineCommand(string);
+       PipelineCommand() {}
+       ~PipelineCommand();
+       vector<string> getRequiredParameters();
+       vector<string> getValidParameters();
+       vector<string> getRequiredFiles();
+       map<string, vector<string> > getOutputFiles() { return outputTypes; } //empty
+       int execute();
+       void help();
+       
+private:
+       bool abort;
+       CommandFactory* cFactory;
+       vector<string> outputNames;
+       map<string, vector<string> > outputTypes;
+       vector<string> commands;
+       string outputDir, sffFile, alignFile, oligosFile, taxonomyFile, pipeFilename, classifyFile, chimeraFile;
+       int processors;
+       
+       bool readUsersPipeline();
+       int runUsersPipeline();
+       void createPatsPipeline();
+       bool parseCommand(string, string&, string&);
+       bool checkForValidAndRequiredParameters(string, string, map<string, vector<string> >&);
+       bool fillInMothurMade(string&, map<string, vector<string> >);
+};
+
+/****************************************************/
+
+#endif
+