X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=phylodiversitycommand.h;h=b44e6caed27037ddb177acdd1416df40550dee5c;hb=8dd3c225255d7084e3aff8740aa4f1f1cabb367a;hp=0aafb8dbc53305a327f7a2b825a2b9c74df8bdb9;hpb=515c3398ea27e2105f616fc5662b2a7ceb486aa0;p=mothur.git diff --git a/phylodiversitycommand.h b/phylodiversitycommand.h index 0aafb8d..b44e6ca 100644 --- a/phylodiversitycommand.h +++ b/phylodiversitycommand.h @@ -12,27 +12,43 @@ #include "command.hpp" #include "treemap.h" -#include "globaldata.hpp" +#include "readtree.h" +#include "sharedutilities.h" + class PhyloDiversityCommand : public Command { public: PhyloDiversityCommand(string); - ~PhyloDiversityCommand(); - int execute(); - void help(); + PhyloDiversityCommand(); + ~PhyloDiversityCommand(){} - private: - GlobalData* globaldata; - + vector setParameters(); + string getCommandName() { return "phylo.diversity"; } + string getCommandCategory() { return "Hypothesis Testing"; } + string getHelpString(); + string getCitation() { return "Faith DP (1994). Phylogenetic pattern and the quantification of organismal biodiversity. Philos Trans R Soc Lond B Biol Sci 345: 45-58. \nhttp://www.mothur.org/wiki/Phylo.diversity"; } + string getDescription() { return "phylo.diversity"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } +private: + ReadTree* read; + TreeMap* tmap; float freq; - int iters; - bool abort, rarefy; - string groups, outputDir; + int iters, processors, numUniquesInName; + bool abort, rarefy, summary, collect, scale; + string groups, outputDir, treefile, groupfile, namefile; vector Groups, outputNames; //holds groups to be used, and outputFile names + map nameMap; - void printData(set&, map< string, vector >&, string); - float calcBranchLength(Tree*, int); + int readNamesFile(); + void printData(set&, map< string, vector >&, ofstream&, int); + void printSumData(map< string, vector >&, ofstream&, int); + vector calcBranchLength(Tree*, int, map< string, set >&); + int driver(Tree*, map< string, vector >&, map >&, int, int, vector&, set&, ofstream&, ofstream&, bool); + int createProcesses(vector&, Tree*, map< string, vector >&, map >&, int, int, vector&, set&, ofstream&, ofstream&); + }; #endif