1 #ifndef SUBSAMPLECOMMAND_H
2 #define SUBSAMPLECOMMAND_H
8 * Created by westcott on 10/27/10.
9 * Copyright 2010 Schloss Lab. All rights reserved.
13 #include "command.hpp"
14 #include "globaldata.hpp"
15 #include "sharedrabundvector.h"
16 #include "listvector.hpp"
17 #include "rabundvector.hpp"
18 #include "inputdata.h"
21 class SubSampleCommand : public Command {
24 SubSampleCommand(string);
27 vector<string> getRequiredParameters();
28 vector<string> getValidParameters();
29 vector<string> getRequiredFiles();
30 map<string, vector<string> > getOutputFiles() { return outputTypes; }
40 nameToBin(string n, int b) : name(n), bin(b) {}
43 GlobalData* globaldata;
45 bool abort, pickedGroups, allLines;
46 string listfile, groupfile, sharedfile, rabundfile, sabundfile, fastafile, namefile;
47 set<string> labels; //holds labels to be used
48 string groups, label, outputDir;
49 vector<string> Groups, outputNames;
50 map<string, vector<string> > outputTypes;
53 int eliminateZeroOTUS(vector<SharedRAbundVector*>&);
54 int getSubSampleShared();
55 int getSubSampleList();
56 int processShared(vector<SharedRAbundVector*>&, ofstream&);
57 int processListGroup(ListVector*&, GroupMap*&, ofstream&, ofstream&);