X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=readcolumn.cpp;h=53a8c4263dddc4687acc5a64cf7c5b1d27aac647;hb=8dd3c225255d7084e3aff8740aa4f1f1cabb367a;hp=f29f70b11fd66d8b8d9a87fdb5502ed289c7d657;hpb=e189982e0a9b7352ad57cc38ccee675f128be22e;p=mothur.git diff --git a/readcolumn.cpp b/readcolumn.cpp index f29f70b..53a8c42 100644 --- a/readcolumn.cpp +++ b/readcolumn.cpp @@ -14,9 +14,17 @@ ReadColumnMatrix::ReadColumnMatrix(string df) : distFile(df){ - successOpen = openInputFile(distFile, fileHandle); + successOpen = m->openInputFile(distFile, fileHandle); + sim = false; } +/***********************************************************************/ + +ReadColumnMatrix::ReadColumnMatrix(string df, bool s) : distFile(df){ + + successOpen = m->openInputFile(distFile, fileHandle); + sim = s; +} /***********************************************************************/ @@ -47,16 +55,11 @@ int ReadColumnMatrix::read(NameAssignment* nameMap){ map::iterator itA = nameMap->find(firstName); map::iterator itB = nameMap->find(secondName); - if(itA == nameMap->end()){ - cerr << "AAError: Sequence '" << firstName << "' was not found in the names file, please correct\n"; exit(1); - } - if(itB == nameMap->end()){ - cerr << "ABError: Sequence '" << secondName << "' was not found in the names file, please correct\n"; exit(1); - } -//if (((itA->second == 8) && (itB->second == 1588)) || ((itA->second == 1588) && (itB->second == 8))) { cout << "found it" << endl; } + if(itA == nameMap->end()){ m->mothurOut("AAError: Sequence '" + firstName + "' was not found in the names file, please correct\n"); exit(1); } + if(itB == nameMap->end()){ m->mothurOut("ABError: Sequence '" + secondName + "' was not found in the names file, please correct\n"); exit(1); } 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 && itA != itB){ if(itA->second > itB->second){ @@ -91,7 +94,7 @@ int ReadColumnMatrix::read(NameAssignment* nameMap){ } reading->update(itA->second * nseqs); } - gobble(fileHandle); + m->gobble(fileHandle); } if(lt == 0){ // oops, it was square @@ -99,7 +102,7 @@ int ReadColumnMatrix::read(NameAssignment* nameMap){ fileHandle.close(); //let's start over D->clear(); //let's start over - openInputFile(distFile, fileHandle); //let's start over + m->openInputFile(distFile, fileHandle); //let's start over while(fileHandle){ fileHandle >> firstName >> secondName >> distance; @@ -109,15 +112,11 @@ int ReadColumnMatrix::read(NameAssignment* nameMap){ map::iterator itA = nameMap->find(firstName); map::iterator itB = nameMap->find(secondName); - if(itA == nameMap->end()){ - cerr << "BError: Sequence '" << firstName << "' was not found in the names file, please correct\n"; - } - if(itB == nameMap->end()){ - cerr << "BError: Sequence '" << secondName << "' was not found in the names file, please correct\n"; - } + if(itA == nameMap->end()){ m->mothurOut("AAError: Sequence '" + firstName + "' was not found in the names file, please correct\n"); exit(1); } + if(itB == nameMap->end()){ m->mothurOut("ABError: Sequence '" + secondName + "' was not found in the names file, please correct\n"); exit(1); } 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 && itA->second > itB->second){ PCell value(itA->second, itB->second, distance); @@ -125,7 +124,7 @@ int ReadColumnMatrix::read(NameAssignment* nameMap){ reading->update(itA->second * nseqs); } - gobble(fileHandle); + m->gobble(fileHandle); } }