RemoveGroupsCommand(string);
RemoveGroupsCommand();
~RemoveGroupsCommand(){}
- vector<string> getRequiredParameters();
- vector<string> getValidParameters();
- vector<string> getRequiredFiles();
- map<string, vector<string> > getOutputFiles() { return outputTypes; }
- int execute();
- void help();
+
+ vector<string> setParameters();
+ string getCommandName() { return "remove.groups"; }
+ string getCommandCategory() { return "OTU-Based Approaches"; }
+ string getOutputFileNameTag(string, string);
+ string getHelpString();
+ string getCitation() { return "http://www.mothur.org/wiki/Remove.groups"; }
+ string getDescription() { return "removes sequences from a list, fasta, name, group, shared, design or taxonomy file from a given group or set of groups"; }
+
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
+
private:
set<string> names;
- string accnosfile, fastafile, namefile, groupfile, listfile, taxfile, outputDir, groups;
+ string accnosfile, fastafile, namefile, groupfile, designfile, listfile, taxfile, outputDir, groups, sharedfile;
bool abort;
vector<string> outputNames, Groups;
- map<string, vector<string> > outputTypes;
GroupMap* groupMap;
+ map<string, string> uniqueToRedundant; //if a namefile is given and the first column name is not selected
+ //then the other files need to change the unique name in their file to match.
+ //only add the names that need to be changed to keep the map search quick
+
int readFasta();
+ int readShared();
int readName();
int readGroup();
- void readAccnos();
int readList();
int readTax();
int fillNames();
+ int readDesign();
};