X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=phylodiversitycommand.h;h=ec372ba20acac93709ca4fff0b58c8a42dadf048;hb=1a968f34ae2d2680eaf189a197d1a21b8dfd6c03;hp=7d4b2d89484a88e4bc5016f19e2e24c89ab07a4e;hpb=f663afa231c9bc1b5e18e0ea3bdd2b2ee784f5b2;p=mothur.git diff --git a/phylodiversitycommand.h b/phylodiversitycommand.h index 7d4b2d8..ec372ba 100644 --- a/phylodiversitycommand.h +++ b/phylodiversitycommand.h @@ -11,29 +11,41 @@ */ #include "command.hpp" -#include "treemap.h" -#include "globaldata.hpp" +#include "counttable.h" +#include "sharedutilities.h" +#include "tree.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 getOutputPattern(string); + 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: + CountTable* ct; float freq; - int iters, processors; + int iters, processors, numUniquesInName; bool abort, rarefy, summary, collect, scale; - string groups, outputDir; + string groups, outputDir, treefile, groupfile, namefile, countfile; vector Groups, outputNames; //holds groups to be used, and outputFile names + map getRootForGroups(Tree* t); + int readNamesFile(); void printData(set&, map< string, vector >&, ofstream&, int); void printSumData(map< string, vector >&, ofstream&, int); - float calcBranchLength(Tree*, int, map< string, set >&); + vector calcBranchLength(Tree*, int, vector< map >&, map); 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&);