X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=fullmatrix.h;h=9de7ead566d4d5446b5ea405b5e3c7eb24991cc0;hp=5912b6ccc0ea323bf905bd0e9f301631276c4490;hb=b206f634aae1b4ce13978d203247fb64757d5482;hpb=197c6d3303439582502840980d6a85cf3aab2314 diff --git a/fullmatrix.h b/fullmatrix.h index 5912b6c..9de7ead 100644 --- a/fullmatrix.h +++ b/fullmatrix.h @@ -11,10 +11,8 @@ #include "mothur.h" #include "groupmap.h" -#include "globaldata.hpp" #include "progress.hpp" -using namespace std; struct Names { string seqName; @@ -24,32 +22,37 @@ struct Names { class FullMatrix { public: - FullMatrix(){}; - FullMatrix(ifstream&); + //FullMatrix(){ m = MothurOut::getInstance(); } + FullMatrix(ifstream&, GroupMap*, bool); ~FullMatrix(){}; int getNumSeqs(); vector getSizes(); vector getGroups(); + void setGroups(vector names) { groups = names; } + void setSizes(vector s) { sizes = s; } int getNumGroups(); void printMatrix(ostream&); float get(int, int); + Names getRowInfo(int row) { return index[row]; } private: vector< vector > matrix; //a 2D distance matrix of all the sequences and their distances to eachother. - void readSquareMatrix(ifstream&); - void readLTMatrix(ifstream&); + int readSquareMatrix(ifstream&); + int readLTMatrix(ifstream&); vector index; // row in vector, sequence group. need to know this so when we sort it can be updated. vector sizes; vector groups; - void sortGroups(int, int); //this function sorts the sequences within the matrix. + void sortGroups(int, int); //this function sorts the sequences within the matrix. + void swapRows(int, int); GroupMap* groupmap; //maps sequences to groups they belong to. int numSeqs; int numGroups; int numUserGroups; - GlobalData* globaldata; + bool sim; + MothurOut* m; }; -#endif \ No newline at end of file +#endif