X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=unifracunweightedcommand.h;h=15c3b9684b01fa58403276b80864684f99e8d189;hb=01f8d2c7d982a6209211f5abbcf2a086fdf60d0a;hp=c6fc46ac0bce0437b2d04315442fcf33e045b4d3;hpb=74844a60d80c6dd06e3fb02ee9b928424f9019b0;p=mothur.git diff --git a/unifracunweightedcommand.h b/unifracunweightedcommand.h index c6fc46a..15c3b96 100644 --- a/unifracunweightedcommand.h +++ b/unifracunweightedcommand.h @@ -15,47 +15,54 @@ #include "treemap.h" #include "sharedutilities.h" #include "fileoutput.h" - - -class GlobalData; +#include "readtree.h" class UnifracUnweightedCommand : public Command { public: UnifracUnweightedCommand(string); - ~UnifracUnweightedCommand() { delete unweighted; delete util; } + UnifracUnweightedCommand(); + ~UnifracUnweightedCommand() {} + + vector setParameters(); + string getCommandName() { return "unifrac.unweighted"; } + string getCommandCategory() { return "Hypothesis Testing"; } + string getOutputFileNameTag(string, string); + string getHelpString(); + string getCitation() { return "Lozupone C, Knight R (2005). UniFrac: a new phylogenetic method for comparing microbial communities. Appl Environ Microbiol 71: 8228-35. \nhttp://www.mothur.org/wiki/Unifrac.unweighted"; } + string getDescription() { return "generic tests that describes whether two or more communities have the same structure"; } + int execute(); - void help(); + void help() { m->mothurOut(getHelpString()); } + private: - GlobalData* globaldata; - SharedUtil* util; FileOutput* output; vector T; //user trees TreeMap* tmap; - Unweighted* unweighted; string sumFile, allGroups; vector groupComb; // AB. AC, BC... - int iters, numGroups, numComp, counter; - EstOutput userData; //unweighted score info for user tree - EstOutput randomData; //unweighted score info for random trees + int iters, numGroups, numComp, counter, processors, subsampleSize, subsampleIters; vector< vector > utreeScores; //scores for users trees for each comb. vector< vector > UWScoreSig; //tree score signifigance when compared to random trees - percentage of random trees with that score or higher. map validScores; //map contains scores from random vector< map > rscoreFreq; //map -vector entry for each combination. vector< map > rCumul; //map -vector entry for each combination. - bool abort, phylip, random; - string groups, itersString, outputDir; + bool abort, phylip, random, includeRoot, consensus, subsample; + string groups, itersString, outputDir, outputForm, treefile, groupfile, namefile; vector Groups, outputNames; //holds groups to be used ofstream outSum, out; ifstream inFile; + int runRandomCalcs(Tree*, vector); void printUWSummaryFile(int); void printUnweightedFile(); void createPhylipFile(int); - + vector buildTrees(vector< vector >&, int, TreeMap&); + int getConsensusTrees(vector< vector >&, int); + int getAverageSTDMatrices(vector< vector >&, int); };