]> git.donarmstrong.com Git - mothur.git/blobdiff - clusterclassic.cpp
removed read.dist, read.otu, read.tree and globaldata. added current to defaults...
[mothur.git] / clusterclassic.cpp
index 0e48690dc57059bb2ab1af1df3da5df0ea71efa4..0048dc6053d0bab06130eeaa6ab5d10b576aeb48 100644 (file)
@@ -11,7 +11,7 @@
 #include "progress.hpp"
 
 /***********************************************************************/
-ClusterClassic::ClusterClassic(float c, string f) : method(f), smallDist(1e6), nseqs(0) {
+ClusterClassic::ClusterClassic(float c, string f, bool s) : method(f), smallDist(1e6), nseqs(0), sim(s) {
        try {
                mapWanted = false;  //set to true by mgcluster to speed up overlap merge
        
@@ -19,7 +19,6 @@ ClusterClassic::ClusterClassic(float c, string f) : method(f), smallDist(1e6), n
                cutoff = c;
                aboveCutoff = cutoff + 10000.0;
                m = MothurOut::getInstance();
-               globaldata = GlobalData::getInstance();
        }
        catch(exception& e) {
                m->errorOut(e, "ClusterClassic", "ClusterClassic");
@@ -102,7 +101,7 @@ int ClusterClassic::readPhylipFile(string filename, NameAssignment* nameMap) {
                                                                                fileHandle >> distance;
                                                        
                                                                                if (distance == -1) { distance = 1000000; }
-                                                                               else if (globaldata->sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
+                                                                               else if (sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
                                                                
                                                                                //if(distance < cutoff){
                                                                                        dMatrix[i][j] = distance;
@@ -124,7 +123,7 @@ int ClusterClassic::readPhylipFile(string filename, NameAssignment* nameMap) {
                                                                                if (m->control_pressed) { delete reading; fileHandle.close(); return 0;  }
                                
                                                                                if (distance == -1) { distance = 1000000; }
-                                                                               else if (globaldata->sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
+                                                                               else if (sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
                                                                                
                                                                                //if(distance < cutoff){
                                                                                        if (distance < smallDist) { smallDist = distance; }
@@ -162,7 +161,7 @@ int ClusterClassic::readPhylipFile(string filename, NameAssignment* nameMap) {
                                                                                if (m->control_pressed) {  fileHandle.close();  delete reading; return 0; }
                                                                                
                                                                                if (distance == -1) { distance = 1000000; }
-                                                                               else if (globaldata->sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
+                                                                               else if (sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.
                                                                                
                                                                                if(j < i){
                                                                                        if (distance < smallDist) { smallDist = distance; }
@@ -185,7 +184,7 @@ int ClusterClassic::readPhylipFile(string filename, NameAssignment* nameMap) {
                                                                                if (m->control_pressed) {  fileHandle.close();  delete reading; return 0; }
                                                                                
                                                                           if (distance == -1) { distance = 1000000; }
-                                                                               else if (globaldata->sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.                                                        
+                                                                               else if (sim) { distance = 1.0 - distance;  }  //user has entered a sim matrix that we need to convert.                                                        
                                                                                
                                                                                if(j < i){
                                                                                        if (distance < smallDist) { smallDist = distance; }
@@ -215,6 +214,8 @@ int ClusterClassic::readPhylipFile(string filename, NameAssignment* nameMap) {
                rabund = new RAbundVector(list->getRAbundVector());
                
                fileHandle.close();
+               
+               return 0;
        }
        catch(exception& e) {
                m->errorOut(e, "ClusterClassic", "readPhylipFile");
@@ -279,10 +280,10 @@ void ClusterClassic::clusterBins(){
 
                rabund->set(smallRow, rabund->get(smallRow)+rabund->get(smallCol));     
                rabund->set(smallCol, 0);       
-               for (int i = smallCol+1; i < rabund->size(); i++) {
+               /*for (int i = smallCol+1; i < rabund->size(); i++) {
                        rabund->set((i-1), rabund->get(i));
                }
-               rabund->resize((rabund->size()-1));
+               rabund->resize((rabund->size()-1));*/
                rabund->setLabel(toString(smallDist));
 
        //      cout << '\t' << rabund->get(smallRow) << '\t' << rabund->get(smallCol) << endl;
@@ -300,10 +301,10 @@ void ClusterClassic::clusterNames(){
                
                list->set(smallRow, list->get(smallRow)+','+list->get(smallCol));
                list->set(smallCol, "");        
-               for (int i = smallCol+1; i < list->size(); i++) {
+               /*for (int i = smallCol+1; i < list->size(); i++) {
                        list->set((i-1), list->get(i));
                }
-               list->resize((list->size()-1));
+               list->resize((list->size()-1));*/
                list->setLabel(toString(smallDist));
        
        //      cout << '\t' << list->get(smallRow) << '\t' << list->get(smallCol) << endl;
@@ -356,7 +357,7 @@ void ClusterClassic::update(double& cutOFF){
                clusterNames();
                
                //resize each row
-               for(int i=0;i<nseqs;i++){
+               /*for(int i=0;i<nseqs;i++){
                        for(int j=c+1;j<dMatrix[i].size();j++){
                                dMatrix[i][j-1]=dMatrix[i][j];
                        }
@@ -370,7 +371,7 @@ void ClusterClassic::update(double& cutOFF){
                }       
                
                nseqs--;
-               dMatrix.pop_back();
+               dMatrix.pop_back();*/
 
        }
        catch(exception& e) {