X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=treemap.h;h=57822e02d4b8c3a57f7d0ddf26947c470bf9400b;hb=e0ce7cbc93d7d2fbb753ca694182db092a0ea0e7;hp=9f10f375660be529a2b2b53e6a87745d426bba19;hpb=ca9ac1d80c62f57270b0dcd49410ebe08a8aecd6;p=mothur.git diff --git a/treemap.h b/treemap.h index 9f10f37..57822e0 100644 --- a/treemap.h +++ b/treemap.h @@ -10,7 +10,6 @@ */ #include "mothur.h" -#include "groupmap.h" #include "listvector.hpp" /* This class is used by the read.tree command to build the tree container. */ @@ -20,15 +19,14 @@ struct GroupIndex { int vectorIndex; }; -class GroupMap; -class ListVector; - class TreeMap { public: TreeMap() { m = MothurOut::getInstance(); } TreeMap(string); ~TreeMap(); - void readMap(); + + int readMap(); + int readMap(string); int getNumGroups(); int getNumSeqs(); void setIndex(string, int); //sequencename, index @@ -37,15 +35,26 @@ public: void removeSeq(string); //removes a sequence, this is to accomadate trees that do not contain all the seqs in your groupfile string getGroup(string); void addSeq(string, string); - vector namesOfGroups; - vector namesOfSeqs; - map seqsPerGroup; //groupname, number of seqs in that group. - map treemap; //sequence name and - void print(ostream&); + void addGroup(string s) { setNamesOfGroups(s); } + vector getNamesOfGroups() { + sort(namesOfGroups.begin(), namesOfGroups.end()); + return namesOfGroups; + } + + void print(ostream&); void makeSim(vector); //takes groupmap info and fills treemap for use by tree.shared command. void makeSim(ListVector*); //takes listvector info and fills treemap for use by tree.shared command. - + vector getNamesSeqs(); + vector getNamesSeqs(vector); //get names of seqs belonging to a group or set of groups + int getCopy(TreeMap&); + + vector namesOfSeqs; + map seqsPerGroup; //groupname, number of seqs in that group. + map treemap; //sequence name and + + private: + vector namesOfGroups; ifstream fileHandle; string groupFileName; int numGroups;