]> git.donarmstrong.com Git - mothur.git/blob - parselistscommand.h
Merge remote-tracking branch 'mothur/master'
[mothur.git] / parselistscommand.h
1 #ifndef PARSELISTCOMMAND_H
2 #define PARSELISTCOMMAND_H
3 /*
4  *  parselistcommand.h
5  *  Mothur
6  *
7  *  Created by westcott on 2/24/10.
8  *  Copyright 2010 Schloss Lab. All rights reserved.
9  *
10  */
11
12 #include "command.hpp"
13 #include "groupmap.h"
14 #include "inputdata.h"
15 #include "listvector.hpp"
16
17 /***************************************************************************************/
18
19 class ParseListCommand : public Command {
20         
21 public:
22         ParseListCommand(string);
23         ParseListCommand();     
24         ~ParseListCommand() {}
25         
26         vector<string> setParameters();
27         string getCommandName()                 { return "parse.list";                          }
28         string getCommandCategory()             { return "OTU-Based Approaches";        }
29         string getOutputFileNameTag(string, string);
30         string getHelpString(); 
31         string getCitation() { return "http://www.mothur.org/wiki/Parse.list"; }
32         string getDescription()         { return "parses a list file by group"; }
33         
34         int execute(); 
35         void help() { m->mothurOut(getHelpString()); }  
36         
37 private:
38         int parse(ListVector*);
39                 
40         ListVector* list;
41         GroupMap* groupMap;
42         InputData* input;
43         
44         ofstream out;
45         string outputDir, listfile, groupfile, label;
46         set<string> labels;
47         bool abort, allLines;
48         vector<string> outputNames;
49         
50         map<string, ofstream*> filehandles;
51         map<string, ofstream*>::iterator it3;
52
53 };
54
55 /***************************************************************************************/
56
57 #endif
58