]> git.donarmstrong.com Git - mothur.git/blobdiff - knn.cpp
added weightedlinkage.cpp
[mothur.git] / knn.cpp
diff --git a/knn.cpp b/knn.cpp
index 93a7aa33faa6e2e1d9cb43c0505464056cbb1f08..beee4aff06b91ff23c55fbc7253c0616b6a7f995 100644 (file)
--- a/knn.cpp
+++ b/knn.cpp
 
 /**************************************************************************************************/
 Knn::Knn(string tfile, string tempFile, string method, int kmerSize, float gapOpen, float gapExtend, float match, float misMatch, int n) 
-: Classify(tfile, tempFile, method, kmerSize, gapOpen, gapExtend, match, misMatch), num(n)  {}
+: Classify(), num(n)  {
+       try {
+               //create search database and names vector
+               generateDatabaseAndNames(tfile, tempFile, method, kmerSize, gapOpen, gapExtend, match, misMatch);
+       }
+       catch(exception& e) {
+               m->errorOut(e, "Knn", "Knn");
+               exit(1);
+       }
+}
+/**************************************************************************************************/
+Knn::~Knn() {
+       try {
+                delete phyloTree; 
+                if (database != NULL) {  delete database; }
+       }
+       catch(exception& e) {
+               m->errorOut(e, "Knn", "~Knn");
+               exit(1);
+       }
+}
 /**************************************************************************************************/
 string Knn::getTaxonomy(Sequence* seq) {
        try {
                string tax;
                
                //use database to find closest seq
-
                vector<int> closest = database->findClosestSequences(seq, num);
                
                if (m->control_pressed) { return tax; }