X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=mothurout.cpp;h=b30ee3ca630c91fea01343c9d873e709e027a4fb;hb=d9b668f68b99f92ecdc71dd8cd363cb4e27107f9;hp=bd1a098c8d5662044552071c7c44a273214018ce;hpb=4ad32478c7b1bbb464c839a6e133f5b517a3efec;p=mothur.git diff --git a/mothurout.cpp b/mothurout.cpp index bd1a098..b30ee3c 100644 --- a/mothurout.cpp +++ b/mothurout.cpp @@ -9,6 +9,7 @@ #include "mothurout.h" + /******************************************************/ MothurOut* MothurOut::getInstance() { if( _uniqueInstance == 0) { @@ -359,18 +360,21 @@ string MothurOut::getline(ifstream& fileHandle) { } /***********************************************************************/ +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) #ifdef USE_COMPRESSION inline bool endsWith(string s, const char * suffix){ size_t suffixLength = strlen(suffix); return s.size() >= suffixLength && s.substr(s.size() - suffixLength, suffixLength).compare(suffix) == 0; } #endif +#endif string MothurOut::getRootName(string longName){ try { string rootName = longName; +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) #ifdef USE_COMPRESSION if (endsWith(rootName, ".gz") || endsWith(rootName, ".bz2")) { int pos = rootName.find_last_of('.'); @@ -378,7 +382,7 @@ string MothurOut::getRootName(string longName){ cerr << "shortening " << longName << " to " << rootName << "\n"; } #endif - +#endif if(rootName.find_last_of(".") != rootName.npos){ int pos = rootName.find_last_of('.')+1; rootName = rootName.substr(0, pos); @@ -632,7 +636,7 @@ int MothurOut::openInputFile(string fileName, ifstream& fileHandle, string m){ try { //get full path name string completeFileName = getFullPathName(fileName); - +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) #ifdef USE_COMPRESSION // check for gzipped or bzipped file if (endsWith(completeFileName, ".gz") || endsWith(completeFileName, ".bz2")) { @@ -655,7 +659,7 @@ int MothurOut::openInputFile(string fileName, ifstream& fileHandle, string m){ } } #endif - +#endif fileHandle.open(completeFileName.c_str()); if(!fileHandle) { //mothurOut("[ERROR]: Could not open " + completeFileName); mothurOutEndLine(); @@ -678,7 +682,7 @@ int MothurOut::openInputFile(string fileName, ifstream& fileHandle){ //get full path name string completeFileName = getFullPathName(fileName); - +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) #ifdef USE_COMPRESSION // check for gzipped or bzipped file if (endsWith(completeFileName, ".gz") || endsWith(completeFileName, ".bz2")) { @@ -701,7 +705,7 @@ int MothurOut::openInputFile(string fileName, ifstream& fileHandle){ } } #endif - +#endif fileHandle.open(completeFileName.c_str()); if(!fileHandle) { @@ -756,7 +760,7 @@ int MothurOut::openOutputFile(string fileName, ofstream& fileHandle){ try { string completeFileName = getFullPathName(fileName); - +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) #ifdef USE_COMPRESSION // check for gzipped file if (endsWith(completeFileName, ".gz") || endsWith(completeFileName, ".bz2")) { @@ -776,7 +780,7 @@ int MothurOut::openOutputFile(string fileName, ofstream& fileHandle){ } } #endif - +#endif fileHandle.open(completeFileName.c_str(), ios::trunc); if(!fileHandle) { mothurOut("[ERROR]: Could not open " + completeFileName); mothurOutEndLine(); @@ -1462,20 +1466,21 @@ bool MothurOut::anyLabelsToProcess(string label, set& userLabels, string } //go through users set and make them floats - for(it = userLabels.begin(); it != userLabels.end(); ++it) { + for(it = userLabels.begin(); it != userLabels.end();) { float temp; if ((*it != "unique") && (convertTestFloat(*it, temp) == true)){ convert(*it, temp); orderFloat.push_back(temp); userMap[*it] = temp; + it++; }else if (*it == "unique") { orderFloat.push_back(-1.0); userMap["unique"] = -1.0; + it++; }else { - if (errorOff == "") { cout << *it << " is not a valid label." << endl; } - userLabels.erase(*it); - it--; + if (errorOff == "") { mothurOut(*it + " is not a valid label."); mothurOutEndLine(); } + userLabels.erase(it++); } } @@ -1491,11 +1496,11 @@ bool MothurOut::anyLabelsToProcess(string label, set& userLabels, string if (orderFloat[i] < labelFloat) { smaller = true; if (orderFloat[i] == -1) { - if (errorOff == "") { cout << "Your file does not include the label unique." << endl; } + if (errorOff == "") { mothurOut("Your file does not include the label unique."); mothurOutEndLine(); } userLabels.erase("unique"); } else { - if (errorOff == "") { cout << "Your file does not include the label " << endl; } + if (errorOff == "") { mothurOut("Your file does not include the label "); mothurOutEndLine(); } string s = ""; for (it2 = userMap.begin(); it2!= userMap.end(); it2++) { if (it2->second == orderFloat[i]) { @@ -1505,7 +1510,7 @@ bool MothurOut::anyLabelsToProcess(string label, set& userLabels, string break; } } - if (errorOff == "") {cout << s << ". I will use the next smallest distance. " << endl; } + if (errorOff == "") {mothurOut( s + ". I will use the next smallest distance. "); mothurOutEndLine(); } } //since they are sorted once you find a bigger one stop looking }else { break; }