*/
#include "mothur.h"
-#include "groupmap.h"
#include "listvector.hpp"
/* This class is used by the read.tree command to build the tree container. */
int vectorIndex;
};
-class GroupMap;
-class ListVector;
-
class TreeMap {
public:
TreeMap() { m = MothurOut::getInstance(); }
TreeMap(string);
~TreeMap();
+
int readMap();
+ int readMap(string);
int getNumGroups();
int getNumSeqs();
- void setIndex(string, int); //sequencename, index
- int getIndex(string); //returns vector index of sequence
+ //void setIndex(string, int); //sequencename, index
+ //int getIndex(string); //returns vector index of sequence
bool isValidGroup(string); //return true if string is a valid group
void removeSeq(string); //removes a sequence, this is to accomadate trees that do not contain all the seqs in your groupfile
string getGroup(string);
sort(namesOfGroups.begin(), namesOfGroups.end());
return namesOfGroups;
}
- vector<string> namesOfSeqs;
- map<string,int> seqsPerGroup; //groupname, number of seqs in that group.
- map<string, GroupIndex> treemap; //sequence name and <groupname, vector index>
- void print(ostream&);
+
+ void print(ostream&);
void makeSim(vector<string>); //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<string> getNamesSeqs();
+ vector<string> getNamesSeqs(vector<string>); //get names of seqs belonging to a group or set of groups
+ int getCopy(TreeMap&);
+
+ vector<string> namesOfSeqs;
+ map<string,int> seqsPerGroup; //groupname, number of seqs in that group.
+ map<string, GroupIndex> treemap; //sequence name and <groupname, vector index>
+
+
private:
vector<string> namesOfGroups;
ifstream fileHandle;