]> git.donarmstrong.com Git - mothur.git/blobdiff - phylodiversitycommand.h
added adjustDots function to pcr.seqs, keeps sequences aligned in case where primers...
[mothur.git] / phylodiversitycommand.h
index b44e6caed27037ddb177acdd1416df40550dee5c..ec372ba20acac93709ca4fff0b58c8a42dadf048 100644 (file)
  */
 
 #include "command.hpp"
-#include "treemap.h"
-#include "readtree.h"
+#include "counttable.h"
 #include "sharedutilities.h"
-
+#include "tree.h"
 
 class PhyloDiversityCommand : public Command {
        
@@ -26,26 +25,27 @@ class PhyloDiversityCommand : public Command {
                vector<string> setParameters();
                string getCommandName()                 { return "phylo.diversity";                     }
                string getCommandCategory()             { return "Hypothesis Testing";          }
-               string getHelpString(); 
+               
+       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:
-               ReadTree* read;
-               TreeMap* tmap;
+               CountTable* ct;
                float freq;
                int iters, processors, numUniquesInName;  
                bool abort, rarefy, summary, collect, scale;
-               string groups, outputDir, treefile, groupfile, namefile;
+               string groups, outputDir, treefile, groupfile, namefile, countfile;
                vector<string> Groups, outputNames; //holds groups to be used, and outputFile names
-               map<string, string> nameMap;
                
+        map<string, int> getRootForGroups(Tree* t);
                int readNamesFile();
                void printData(set<int>&, map< string, vector<float> >&, ofstream&, int);
                void printSumData(map< string, vector<float> >&, ofstream&, int);
-               vector<float> calcBranchLength(Tree*, int, map< string, set<int> >&);
+        vector<float> calcBranchLength(Tree*, int, vector< map<string, bool> >&, map<string, int>);
                int driver(Tree*, map< string, vector<float> >&, map<string, vector<float> >&, int, int, vector<int>&, set<int>&, ofstream&, ofstream&, bool);
                int createProcesses(vector<int>&, Tree*, map< string, vector<float> >&, map<string, vector<float> >&, int, int, vector<int>&, set<int>&, ofstream&, ofstream&);