X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=unifracweightedcommand.h;h=9c0ad9939221f6a94083cac9300344004e2e707d;hb=d5bf2c1354d0811a33394d918b15620606560d58;hp=45d3c7cec25d4d80448d32beeaa212a92295d366;hpb=fb5a52d8d7896ba00c9ccc6add22ed89c5fb2ad7;p=mothur.git diff --git a/unifracweightedcommand.h b/unifracweightedcommand.h index 45d3c7c..9c0ad99 100644 --- a/unifracweightedcommand.h +++ b/unifracweightedcommand.h @@ -10,53 +10,59 @@ * */ -#include -#include -#include -#include -#include #include "command.hpp" #include "weighted.h" #include "treemap.h" +#include "progress.hpp" +#include "sharedutilities.h" +#include "fileoutput.h" -using namespace std; class GlobalData; class UnifracWeightedCommand : public Command { public: - UnifracWeightedCommand(); - ~UnifracWeightedCommand() { delete weighted; } + UnifracWeightedCommand(string); + ~UnifracWeightedCommand() { if (abort == false) { delete weighted; delete util; } } int execute(); + void help(); private: GlobalData* globaldata; + SharedUtil* util; + FileOutput* output; vector T; //user trees - vector utreeScores; //user tree unweighted scores - vector WScoreSig; //tree weighted score signifigance when compared to random trees - percentage of random trees with that score or lower. + vector utreeScores; //user tree unweighted scores + vector WScoreSig; //tree weighted score signifigance when compared to random trees - percentage of random trees with that score or lower. vector groupComb; // AB. AC, BC... Tree* randT; //random tree TreeMap* tmap; Weighted* weighted; - string weightedFile, sumFile, distFile; - int iters, numGroups, numComp; + string sumFile; + int iters, numGroups, numComp, counter; EstOutput userData; //weighted score info for user tree EstOutput randomData; //weighted score info for random trees - vector< map > validScores; //vector each group comb has an entry - vector< map > rscoreFreq; //vector each group comb has an entry - vector< map > uscoreFreq; //vector each group comb has an entry - vector< map > totalrscoreFreq; //vector each group comb has an entry - vector< map > rCumul; //vector each group comb has an entry - vector< map > uCumul; //vector each group comb has an entry - map::iterator it; - map::iterator it2; + vector< vector > rScores; //vector each group comb has an entry + vector< vector > uScores; //vector each group comb has an entry + vector< map > rScoreFreq; //map -vector entry for each combination. + vector< map > rCumul; //map -vector entry for each c + map validScores; //map contains scores from random - ofstream outSum, outDist, out; + bool abort, phylip, random; + string groups, itersString; + vector Groups; //holds groups to be used + + + ofstream outSum; void printWSummaryFile(); void printWeightedFile(); - void saveRandomScores(); + void createPhylipFile(); + //void removeValidScoresDuplicates(); + int findIndex(float, int); + void calculateFreqsCumuls(); + };