]> git.donarmstrong.com Git - mothur.git/blob - pipelinepdscommand.h
changes while testing
[mothur.git] / pipelinepdscommand.h
1 #ifndef PIPELINEPDSCOMMAND_H
2 #define PIPELINEPDSCOMMAND_H
3
4 /*
5  *  pipelinepdscommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 10/5/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13
14 #include "command.hpp"
15 #include "commandfactory.hpp"
16
17 /****************************************************/
18
19 class PipelineCommand : public Command {
20         
21 public:
22         PipelineCommand(string);
23         PipelineCommand() { abort = true; calledHelp = true; setParameters(); }
24         ~PipelineCommand(){}
25         
26         vector<string> setParameters();
27         string getCommandName()                 { return "pipeline.pds";        }
28         string getCommandCategory()             { return "Hidden";                      }
29         string getHelpString(); 
30     string getOutputPattern(string) { return ""; }      
31         string getCitation() { return "Schloss PD, Gevers D, Westcott SL (2011).  Reducing the effects of PCR amplification and sequencing artifacts on 16S rRNA-based studies.  PLoS ONE.  6:e27310.\nhttp://www.mothur.org/wiki/Pipeline.pds"; }
32         string getDescription()         { return "pat's pipeline"; }
33
34         
35         int execute(); 
36         void help() { m->mothurOut(getHelpString()); }  
37         
38 private:
39         bool abort;
40         CommandFactory* cFactory;
41         vector<string> outputNames;
42         vector<string> commands;
43         string outputDir, sffFile, alignFile, oligosFile, taxonomyFile, pipeFilename, classifyFile, chimeraFile;
44         int processors;
45         
46         bool readUsersPipeline();
47         int runUsersPipeline();
48         void createPatsPipeline();
49         bool parseCommand(string, string&, string&);
50         bool checkForValidAndRequiredParameters(string, string, map<string, vector<string> >&);
51         bool fillInMothurMade(string&, map<string, vector<string> >&);
52 };
53
54 /****************************************************/
55
56 #endif
57