1 #ifndef MERGEGROUPSCOMMAND_H
2 #define MERGEGROUPSCOMMAND_H
8 * Created by westcott on 1/24/11.
9 * Copyright 2011 Schloss Lab. All rights reserved.
13 #include "command.hpp"
14 #include "inputdata.h"
15 #include "sharedrabundvector.h"
17 class MergeGroupsCommand : public Command {
20 MergeGroupsCommand(string);
22 ~MergeGroupsCommand() {}
24 vector<string> setParameters();
25 string getCommandName() { return "merge.groups"; }
26 string getCommandCategory() { return "General"; }
28 string getHelpString();
29 string getOutputPattern(string);
30 string getCitation() { return "http://www.mothur.org/wiki/Merge.groups"; }
31 string getDescription() { return "reads shared file and a design file and merges the groups in the shared file that are in the same grouping in the design file"; }
35 void help() { m->mothurOut(getHelpString()); }
39 vector<SharedRAbundVector*> lookup;
41 bool abort, allLines, pickedGroups;
42 set<string> labels; //holds labels to be used
43 string groups, label, outputDir, inputDir, designfile, sharedfile, groupfile;
44 vector<string> Groups, outputNames;
46 int process(vector<SharedRAbundVector*>&, ofstream&);
47 int processSharedFile(GroupMap*&);
48 int processGroupFile(GroupMap*&);