]> git.donarmstrong.com Git - mothur.git/blob - removegroupscommand.h
working on pam
[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         
29         string getHelpString(); 
30     string getOutputPattern(string);    
31         string getCitation() { return "http://www.mothur.org/wiki/Remove.groups"; }
32         string getDescription()         { return "removes sequences from a list, fasta, name, group, shared, design or taxonomy file from a given group or set of groups"; }
33         
34         int execute(); 
35         void help() { m->mothurOut(getHelpString()); }  
36         
37         
38 private:
39         set<string> names;
40         string accnosfile, fastafile, namefile, groupfile, countfile, designfile, listfile, taxfile, outputDir, groups, sharedfile;
41         bool abort;
42         vector<string> outputNames, Groups;
43         GroupMap* groupMap;
44         map<string, string> uniqueToRedundant; //if a namefile is given and the first column name is not selected
45         //then the other files need to change the unique name in their file to match.
46         //only add the names that need to be changed to keep the map search quick
47         
48         
49         int readFasta();
50         int readShared();
51         int readName();
52         int readGroup();
53     int readCount();
54         int readList();
55         int readTax();
56         int fillNames();
57     int readDesign();
58         
59 };
60
61 #endif
62
63