*/
#include "treecalculator.h"
-#include "treemap.h"
+#include "counttable.h"
/***********************************************************************/
class Weighted : public TreeCalculator {
public:
- Weighted(TreeMap* t) : tmap(t) {};
+ Weighted( bool r) : includeRoot(r) {};
~Weighted() {};
- EstOutput getValues(Tree*, string, string, vector<double>&);
+ EstOutput getValues(Tree*, string, string);
EstOutput getValues(Tree*, int, string);
- vector<double> getBranchLengthSums(Tree*);
-
private:
struct linePair {
int start;
int num;
linePair(int i, int j) : start(i), num(j) {}
};
- vector<linePair*> lines;
+ vector<linePair> lines;
- GlobalData* globaldata;
EstOutput data;
- TreeMap* tmap;
map<string, int>::iterator it;
map<string, double> WScore; //a score for each group combination i.e. AB, AC, BC.
int processors;
string outputDir;
+ map< vector<string>, set<int> > rootForGrouping; //maps a grouping combo to the root for that combo
+ bool includeRoot;
- EstOutput driver(Tree*, vector< vector<string> >, int, int, vector<double>&);
- EstOutput createProcesses(Tree*, vector< vector<string> >, vector<double>&);
+ EstOutput driver(Tree*, vector< vector<string> >, int, int, CountTable*);
+ EstOutput createProcesses(Tree*, vector< vector<string> >, CountTable*);
+ double getLengthToRoot(Tree*, int, string, string);
};
/***********************************************************************/