7 #include "sparsematrix.hpp"
13 typedef list<PCell>::iterator MatData;
18 Cluster(RAbundVector*, ListVector*, SparseMatrix*);
19 virtual void update() = 0;
22 void getRowColCells();
23 virtual void clusterBins();
24 virtual void clusterNames();
28 SparseMatrix* dMatrix;
33 vector<MatData> rowCells;
34 vector<MatData> colCells;
39 /***********************************************************************/
41 class CompleteLinkage : public Cluster {
43 CompleteLinkage(RAbundVector*, ListVector*, SparseMatrix*);
50 /***********************************************************************/
52 class SingleLinkage : public Cluster {
54 SingleLinkage(RAbundVector*, ListVector*, SparseMatrix*);
61 /***********************************************************************/
63 class AverageLinkage : public Cluster {
65 AverageLinkage(RAbundVector*, ListVector*, SparseMatrix*);
72 /***********************************************************************/