]> git.donarmstrong.com Git - mothur.git/blob - getsharedotucommand.h
test
[mothur.git] / getsharedotucommand.h
1 #ifndef GETSHAREDOTUCOMMAND_H
2 #define GETSHAREDOTUCOMMAND_H
3
4 /*
5  *  getsharedotucommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 9/22/09.
9  *  Copyright 2009 Schloss Lab. All rights reserved.
10  *
11  */
12  
13 #include "command.hpp"
14 #include "listvector.hpp"
15 #include "sequence.hpp"
16 #include "groupmap.h"
17
18 //**********************************************************************************************************************
19 class GetSharedOTUCommand : public Command {
20         
21         public:
22         
23                 GetSharedOTUCommand(string);    
24                 GetSharedOTUCommand();  
25                 ~GetSharedOTUCommand() {}
26         
27                 vector<string> setParameters();
28                 string getCommandName()                 { return "get.sharedseqs";                      }
29                 string getCommandCategory()             { return "OTU-Based Approaches";        }
30                 string getRequiredCommand()             { return "none";                                        }
31                 
32         string getHelpString(); 
33     string getOutputPattern(string);    
34                 string getCitation() { return "http://www.mothur.org/wiki/Get.sharedseqs"; }
35                 string getDescription()         { return "identifies sequences that are either unique or shared by specific groups"; }
36
37                 int execute(); 
38                 void help() { m->mothurOut(getHelpString()); }  
39         
40         
41                 
42         private:
43                 ListVector* list;
44                 GroupMap* groupMap;
45                 
46                 set<string> labels;
47                 string fastafile, label, groups, listfile, groupfile, output, userGroups, outputDir, format;
48                 bool abort, allLines, unique;
49                 vector<string> Groups;
50                 map<string, string> groupFinder;
51                 map<string, string>::iterator it;
52                 vector<Sequence> seqs;
53                 vector<string> outputNames;
54                 
55                 int process(ListVector*);
56                 
57 };
58 //**********************************************************************************************************************
59
60 #endif
61