]> git.donarmstrong.com Git - mothur.git/blob - removegroupscommand.h
Merge remote-tracking branch 'mothur/master'
[mothur.git] / removegroupscommand.h
1 #ifndef REMOVEGROUPSCOMMAND_H
2 #define REMOVEGROUPSCOMMAND_H
3
4 /*
5  *  removegroupscommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 11/10/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13
14 #include "command.hpp"
15 #include "groupmap.h"
16
17 class RemoveGroupsCommand : public Command {
18         
19 public:
20         
21         RemoveGroupsCommand(string);    
22         RemoveGroupsCommand();
23         ~RemoveGroupsCommand(){}
24         
25         vector<string> setParameters();
26         string getCommandName()                 { return "remove.groups";                       }
27         string getCommandCategory()             { return "OTU-Based Approaches";        }
28         string getOutputFileNameTag(string, string);
29         string getHelpString(); 
30         string getCitation() { return "http://www.mothur.org/wiki/Remove.groups"; }
31         string getDescription()         { return "removes sequences from a list, fasta, name, group, shared, design or taxonomy file from a given group or set of groups"; }
32         
33         int execute(); 
34         void help() { m->mothurOut(getHelpString()); }  
35         
36         
37 private:
38         set<string> names;
39         string accnosfile, fastafile, namefile, groupfile, designfile, listfile, taxfile, outputDir, groups, sharedfile;
40         bool abort;
41         vector<string> outputNames, Groups;
42         GroupMap* groupMap;
43         map<string, string> uniqueToRedundant; //if a namefile is given and the first column name is not selected
44         //then the other files need to change the unique name in their file to match.
45         //only add the names that need to be changed to keep the map search quick
46         
47         
48         int readFasta();
49         int readShared();
50         int readName();
51         int readGroup();
52         int readList();
53         int readTax();
54         int fillNames();
55     int readDesign();
56         
57 };
58
59 #endif
60
61