]> git.donarmstrong.com Git - mothur.git/blobdiff - fileoutput.cpp
sffinfo bug with flow grams right index when clipQualRight=0
[mothur.git] / fileoutput.cpp
index 9c1f9c0f0c61fe3b27d84f699482d8708ad1e660..a4a68a8ef25a66ca52052faf8a1e8e6221bec4af 100644 (file)
@@ -15,24 +15,24 @@ ThreeColumnFile::~ThreeColumnFile(){
        
        inFile.close();
        outFile.close();
-       remove(outName.c_str());
-};
+       m->mothurRemove(outName);
+}
 
 /***********************************************************************/
 
 void ThreeColumnFile::initFile(string label){
        try {
                if(counter != 0){
-                       openOutputFile(outName, outFile);
-                       openInputFile(inName, inFile);
+                       m->openOutputFile(outName, outFile);
+                       m->openInputFile(inName, inFile);
 
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << '\t' << label << "\tlci\thci" << endl;
                }
                else{
-                       openOutputFile(outName, outFile);
+                       m->openOutputFile(outName, outFile);
                        outFile << "numsampled\t" << label << "\tlci\thci" << endl;
                }
 
@@ -40,11 +40,7 @@ void ThreeColumnFile::initFile(string label){
                outFile.setf(ios::showpoint);
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ThreeColumnFile class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-       catch(...) {
-               cout << "An unknown error has occurred in the ThreeColumnFile class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ThreeColumnFile", "initFile");
                exit(1);
        }
 }
@@ -55,7 +51,7 @@ void ThreeColumnFile::output(int nSeqs, vector<double> data){
        try {
                if(counter != 0){               
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << setprecision(4) << '\t' << data[0] << '\t' << data[1] << '\t' << data[2] << endl;
                }
@@ -64,14 +60,10 @@ void ThreeColumnFile::output(int nSeqs, vector<double> data){
                }
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ThreeColumnFile class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ThreeColumnFile", "output");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the ThreeColumnFile class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-};
+}
 
 /***********************************************************************/
 
@@ -86,21 +78,21 @@ void ThreeColumnFile::resetFile(){
                }
                counter = 1;
                
-               remove(inName.c_str());
+               m->mothurRemove(inName);
                renameOk = rename(outName.c_str(), inName.c_str());
                
+               //renameFile(outName, inName);
+               
                //checks to make sure user was able to rename and remove successfully
-               if ((renameOk != 0)) {  cout << "Unable to rename necessary files." << endl;  cout << outName << "  g   " << inName << endl;}
-
+               if ((renameOk != 0)) { 
+                       m->mothurOut("Unable to rename " + outName); m->mothurOutEndLine();
+                       perror(" : ");
+               }       
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ThreeColumnFile class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ThreeColumnFile", "resetFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the ThreeColumnFile class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -110,19 +102,19 @@ ColumnFile::~ColumnFile(){
        
        inFile.close();
        outFile.close();
-       remove(outName.c_str());
-};
+       m->mothurRemove(outName);
+}
 
 /***********************************************************************/
 
 void ColumnFile::initFile(string label, vector<string> tags){
        try {
                if(counter != 0){
-                       openOutputFile(outName, outFile);
-                       openInputFile(inName, inFile);
+                       m->openOutputFile(outName, outFile);
+                       m->openInputFile(inName, inFile);
 
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << '\t'; 
                        for(int i = 0; i < tags.size(); i++) {
@@ -131,7 +123,7 @@ void ColumnFile::initFile(string label, vector<string> tags){
                        outFile << endl;
                }
                else{
-                       openOutputFile(outName, outFile);
+                       m->openOutputFile(outName, outFile);
                        for(int i = 0; i < tags.size(); i++) {
                                outFile << label + tags[i] << '\t';
                        }
@@ -142,11 +134,7 @@ void ColumnFile::initFile(string label, vector<string> tags){
                outFile.setf(ios::showpoint);
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ColumnFile class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-       catch(...) {
-               cout << "An unknown error has occurred in the ColumnFile class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ColumnFile", "initFile");
                exit(1);
        }
 }
@@ -158,16 +146,16 @@ void ColumnFile::output(vector<double> data){
        
                if(counter != 0){               
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
 
-                       outFile << inputBuffer << '\t' << setprecision(6) << data[0] << setprecision(globaldata->getIters().length());
+                       outFile << inputBuffer << '\t' << setprecision(6) << data[0] << setprecision(iters.length());
                        for (int i = 1; i< data.size(); i++) {
                                outFile << '\t' << data[i]; 
                        }
                        outFile << endl;
                }
                else{
-                       outFile << setprecision(6) << data[0] << setprecision(globaldata->getIters().length());
+                       outFile << setprecision(6) << data[0] << setprecision(iters.length());
                        for (int i = 1; i< data.size(); i++) {
                                outFile << '\t' << data[i]; 
                        }
@@ -176,14 +164,10 @@ void ColumnFile::output(vector<double> data){
 
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ColumnFile class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ColumnFile", "output");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the ColumnFile class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-};
+}
 
 /***********************************************************************/
 
@@ -198,21 +182,21 @@ void ColumnFile::resetFile(){
                }
                counter = 1;
                
-               remove(inName.c_str());
+               m->mothurRemove(inName);
                renameOk = rename(outName.c_str(), inName.c_str());
                
+               //renameFile(outName, inName);
+               
                //checks to make sure user was able to rename and remove successfully
-               if ((renameOk != 0)) { cout << "Unable to rename necessary files." << endl; }
-
+               if ((renameOk != 0)) { 
+                       m->mothurOut("Unable to rename " + outName); m->mothurOutEndLine();
+                       perror(" : ");
+               }       
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the ColumnFile class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "ColumnFile", "resetFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the ColumnFile class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -222,24 +206,24 @@ SharedThreeColumnFile::~SharedThreeColumnFile(){
        
        inFile.close();
        outFile.close();
-       remove(outName.c_str());
-};
+       m->mothurRemove(outName);
+}
 
 /***********************************************************************/
 
 void SharedThreeColumnFile::initFile(string label){
        try {
                if(counter != 0){
-                       openOutputFile(outName, outFile);
-                       openInputFile(inName, inFile);
+                       m->openOutputFile(outName, outFile);
+                       m->openInputFile(inName, inFile);
 
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << '\t' << label << "\tlci\thci" << endl;
                }
                else{
-                       openOutputFile(outName, outFile);
+                       m->openOutputFile(outName, outFile);
                        outFile << "numsampled\t" << groupLabel << '\t' << label << "\tlci\thci" << endl;
                }
 
@@ -247,11 +231,7 @@ void SharedThreeColumnFile::initFile(string label){
                outFile.setf(ios::showpoint);
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the SharedThreeColumnFile class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-       catch(...) {
-               cout << "An unknown error has occurred in the SharedThreeColumnFile class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedThreeColumnFile", "initFile");
                exit(1);
        }
 }
@@ -262,7 +242,7 @@ void SharedThreeColumnFile::output(int nSeqs, vector<double> data){
        try {
                if(counter != 0){               
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << setprecision(4) << '\t' << data[0] << '\t' << data[1] << '\t' << data[2] << endl;
                }
@@ -272,14 +252,10 @@ void SharedThreeColumnFile::output(int nSeqs, vector<double> data){
                }
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the SharedThreeColumnFile class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedThreeColumnFile", "output");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the SharedThreeColumnFile class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }
-};
+}
 
 /***********************************************************************/
 
@@ -293,21 +269,22 @@ void SharedThreeColumnFile::resetFile(){
                        outFile.close();
                }
                counter = 1;
-               remove(inName.c_str());
+               
+               m->mothurRemove(inName);
                renameOk = rename(outName.c_str(), inName.c_str());
                
+               //renameFile(outName, inName);
+               
                //checks to make sure user was able to rename and remove successfully
-               if ((renameOk != 0)) { cout << "Unable to rename necessary files." << endl; }
-
+               if ((renameOk != 0)) { 
+                       m->mothurOut("Unable to rename " + outName); m->mothurOutEndLine();
+                       perror(" : ");
+               }       
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the SharedThreeColumnFile class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedThreeColumnFile", "resetFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the SharedThreeColumnFile class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -318,38 +295,34 @@ OneColumnFile::~OneColumnFile(){
        
        inFile.close();
        outFile.close();
-       remove(outName.c_str());        
-};
+       m->mothurRemove(outName);       
+}
 
 /***********************************************************************/
 
 void OneColumnFile::initFile(string label){
        try {
                if(counter != 0){
-                       openOutputFile(outName, outFile);
-                       openInputFile(inName, inFile);
+                       m->openOutputFile(outName, outFile);
+                       m->openInputFile(inName, inFile);
                
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << '\t' << label << endl;
                }
                else{
-                       openOutputFile(outName, outFile);
-                       outFile << "numsequences\t" << label << endl;
+                       m->openOutputFile(outName, outFile);
+                       outFile << "numsampled\t" << label << endl;
                }
        
                outFile.setf(ios::fixed, ios::floatfield);
                outFile.setf(ios::showpoint);
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "OneColumnFile", "initFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -358,7 +331,7 @@ void OneColumnFile::output(int nSeqs, vector<double> data){
        try {   
                if(counter != 0){               
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << setprecision(4) << '\t'  << data[0] << endl;
                }
@@ -367,14 +340,10 @@ void OneColumnFile::output(int nSeqs, vector<double> data){
                }
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "OneColumnFile", "output");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
-};
+}
 
 /***********************************************************************/
 
@@ -383,26 +352,27 @@ void OneColumnFile::resetFile(){
                if(counter != 0){
                        outFile.close();
                        inFile.close();
-               }
-               else{
+               }else{
                        outFile.close();
                }       
                counter = 1;
-               remove(inName.c_str());
+               
+               m->mothurRemove(inName);
                renameOk = rename(outName.c_str(), inName.c_str());
                
+               //renameFile(outName, inName);
+               
                //checks to make sure user was able to rename and remove successfully
-               if ((renameOk != 0)) { cout << "Unable to rename necessary files." << endl; }
+               if ((renameOk != 0)) { 
+                       m->mothurOut("Unable to rename " + outName); m->mothurOutEndLine();
+                       perror(" : ");
+               }       
 
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "OneColumnFile", "resetFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -412,25 +382,25 @@ SharedOneColumnFile::~SharedOneColumnFile(){
        
        inFile.close();
        outFile.close();
-       remove(outName.c_str());        
-};
+       m->mothurRemove(outName);       
+}
 
 /***********************************************************************/
 
 void SharedOneColumnFile::initFile(string label){
        try {
                if(counter != 0){
-                       openOutputFile(outName, outFile);
-                       openInputFile(inName, inFile);
+                       m->openOutputFile(outName, outFile);
+                       m->openInputFile(inName, inFile);
                
                        string inputBuffer;
-                       getline(inFile, inputBuffer);
+                       inputBuffer = m->getline(inFile);
                
                        outFile <<  inputBuffer << '\t' << label  << endl;
 
                }
                else{
-                       openOutputFile(outName, outFile);
+                       m->openOutputFile(outName, outFile);
                        outFile << "sampled\t" << label << endl;
                
                }
@@ -439,13 +409,9 @@ void SharedOneColumnFile::initFile(string label){
                outFile.setf(ios::showpoint);
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedOneColumnFile", "initFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/
@@ -461,7 +427,7 @@ void SharedOneColumnFile::output(int nSeqs, vector<double> data){
                        }
                        if(counter != 0){               
                                string inputBuffer;
-                               getline(inFile, inputBuffer);
+                               inputBuffer = m->getline(inFile);
 
                                outFile <<  inputBuffer << setprecision(2) << '\t' << dataOutput << endl;
                        }
@@ -470,14 +436,10 @@ void SharedOneColumnFile::output(int nSeqs, vector<double> data){
                        }
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedOneColumnFile", "output");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
-};
+}
 
 /***********************************************************************/
 
@@ -491,23 +453,22 @@ void SharedOneColumnFile::resetFile(){
                        outFile.close();
                }       
                counter = 1;
-               
-               remove(inName.c_str());
+
+               m->mothurRemove(inName);
                renameOk = rename(outName.c_str(), inName.c_str());
                
-               //checks to make sure user was able to rename and remove successfully
-               if ((renameOk != 0)) { cout << "Unable to rename necessary files." << endl; }
-
+               //renameFile(outName, inName);
                
+               //checks to make sure user was able to rename and remove successfully
+               if ((renameOk != 0)) { 
+                       m->mothurOut("Unable to rename " + outName); m->mothurOutEndLine();
+                       perror(" : ");
+               }       
        }
        catch(exception& e) {
-               cout << "Standard Error: " << e.what() << " has occurred in the OneColumnFile class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+               m->errorOut(e, "SharedOneColumnFile", "resetFile");
                exit(1);
        }
-       catch(...) {
-               cout << "An unknown error has occurred in the OneColumnFile class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
-               exit(1);
-       }       
 }
 
 /***********************************************************************/