public:
ClusterSplitCommand(string);
+ ClusterSplitCommand();
~ClusterSplitCommand();
+ vector<string> getRequiredParameters();
+ vector<string> getValidParameters();
+ vector<string> getRequiredFiles();
+ map<string, vector<string> > getOutputFiles() { return outputTypes; }
int execute();
void help();
GlobalData* globaldata;
vector<int> processIDS; //processid
vector<string> outputNames;
+ map<string, vector<string> > outputTypes;
- string method, fileroot, tag, outputDir, phylipfile, columnfile, namefile, distfile, format, showabund, timing, splitmethod, taxFile;
+ string method, fileroot, tag, outputDir, phylipfile, columnfile, namefile, distfile, format, showabund, timing, splitmethod, taxFile, fastafile;
double cutoff, splitcutoff;
- int precision, length, processors;
- bool print_start, abort, hard;
+ int precision, length, processors, taxLevelCutoff;
+ bool print_start, abort, hard, large;
time_t start;
ofstream outList, outRabund, outSabund;
void printData(ListVector*);
int createProcesses(vector < vector < map<string, string> > >);
vector<string> cluster(vector< map<string, string> >, set<string>&);
- int mergeLists(vector<string>, string, set<string>);
+ int mergeLists(vector<string>, map<float, int>, ListVector*);
+ map<float, int> completeListFile(vector<string>, string, set<string>&, ListVector*&);
+ int createMergedDistanceFile(vector< map<string, string> >);
};
#endif