class Cluster {
public:
- Cluster(RAbundVector*, ListVector*, SparseMatrix*, float);
+ Cluster(RAbundVector*, ListVector*, SparseMatrix*, float, string);
virtual void update(double&);
virtual string getTag() = 0;
virtual void setMapWanted(bool m);
bool mapWanted;
float cutoff;
map<string, int> seq2Bin;
+ string method;
vector<MatVec> seqVec; // contains vectors of cells related to a certain sequence
MatVec rowCells;
class CompleteLinkage : public Cluster {
public:
- CompleteLinkage(RAbundVector*, ListVector*, SparseMatrix*, float);
+ CompleteLinkage(RAbundVector*, ListVector*, SparseMatrix*, float, string);
bool updateDistance(MatData& colCell, MatData& rowCell);
string getTag();
class SingleLinkage : public Cluster {
public:
- SingleLinkage(RAbundVector*, ListVector*, SparseMatrix*, float);
+ SingleLinkage(RAbundVector*, ListVector*, SparseMatrix*, float, string);
void update();
bool updateDistance(MatData& colCell, MatData& rowCell);
string getTag();
class AverageLinkage : public Cluster {
public:
- AverageLinkage(RAbundVector*, ListVector*, SparseMatrix*, float);
+ AverageLinkage(RAbundVector*, ListVector*, SparseMatrix*, float, string);
bool updateDistance(MatData& colCell, MatData& rowCell);
string getTag();