X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=fullmatrix.h;h=f3ad0e73dfb2615e4fbeb5bbd96f1a025c6a0ae6;hb=9651e8e7172d86707b34af15e95ec60ad4c3c3f9;hp=4fe11451ea7bc612e1b50397bd82328bbe2195c3;hpb=8aaea67a29205b8d3fe787d94d0dc5987858d2e6;p=mothur.git diff --git a/fullmatrix.h b/fullmatrix.h index 4fe1145..f3ad0e7 100644 --- a/fullmatrix.h +++ b/fullmatrix.h @@ -11,21 +11,32 @@ #include "mothur.h" #include "groupmap.h" +#include "globaldata.hpp" +#include "progress.hpp" + +using namespace std; class FullMatrix { -public: - FullMatrix(){}; - FullMatrix(ifstream&); - ~FullMatrix(); + public: + FullMatrix(){}; + FullMatrix(ifstream&); + ~FullMatrix(){}; - int getNumSeqs(); + int getNumSeqs(); + void printMatrix(ostream&); -private: - void sortGroups(); //this function sorts the sequences within the matrix. - vector< vector > matrix; //a 2D distance matrix of all the sequences and their distances to eachother. - GroupMap* groupmap; //maps sequences to groups they belong to. - int numSeqs; + private: + void sortGroups(); //this function sorts the sequences within the matrix. + void quicksort(int, int, int);//row of matrix, low, high and row number + void readSquareMatrix(ifstream&); + void readLTMatrix(ifstream&); + vector< vector > matrix; //a 2D distance matrix of all the sequences and their distances to eachother. + map index; // row in vector, sequence group. need to know this so when we sort it can be updated. + GroupMap* groupmap; //maps sequences to groups they belong to. + GlobalData* globaldata; + int numSeqs; + bool square; };