X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=sharedchao1.h;h=243039e3a8822c0b9e7a66b6e17d08fcee56cf34;hb=8f7164a88df624fd0a8d1eddbb3d744463cc9ecb;hp=7cca63a8fb48bb9ac9a45757d95436562deff455;hpb=2c5f6dfaab750da109bb7bc7e51b005d135c2d77;p=mothur.git diff --git a/sharedchao1.h b/sharedchao1.h index 7cca63a..243039e 100644 --- a/sharedchao1.h +++ b/sharedchao1.h @@ -17,12 +17,30 @@ It is a child of the calculator class. */ /***********************************************************************/ + class SharedChao1 : public Calculator { -public: - SharedChao1() : Calculator("sharedchao", 3) {}; - EstOutput getValues(SAbundVector*) {return data;}; - EstOutput getValues(SharedRAbundVector*, SharedRAbundVector*); + public: + SharedChao1() : Calculator("sharedchao", 3, true) {}; + EstOutput getValues(SAbundVector*) {return data;}; + EstOutput getValues(vector); + private: + IntNode* f1root; + IntNode* f2root; + vector f1leaves; + vector f2leaves; + int numLeaves; + int numNodes; + + void initialTree(int); //builds trees structure with n leaf nodes initialized to 0. + void setCoef(IntNode*, int); + void updateTree(vector); //take vector containing the abundance info. for a bin and updates trees. + void updateBranchf1(IntNode*, vector, int); //pointer, vector of abundance values, index into vector + void updateBranchf2(IntNode*, vector, int); //pointer, vector of abundance values, index into vector + + //for debugging + void printTree(); + void printBranch(IntNode*); }; /***********************************************************************/