+void UnifracUnweightedCommand::initFile(string label){
+ try {
+ if(counter != 0){
+ openOutputFile(unweightedFileout, out);
+ openInputFile(unweightedFile, inFile);
+
+ string inputBuffer;
+ getline(inFile, inputBuffer);
+
+ out << inputBuffer << '\t' << label + "RandFreq" << '\t' << label + "RandCumul" << endl;
+ }else{
+ openOutputFile(unweightedFileout, out);
+ out << label + "Score" << '\t' << label + "RandFreq" << '\t' << label + "RandCumul" << endl;
+ }
+
+ out.setf(ios::fixed, ios::floatfield);
+ out.setf(ios::showpoint);
+ }
+ catch(exception& e) {
+ cout << "Standard Error: " << e.what() << " has occurred in the UnifracUnweightedCommand class Function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+ catch(...) {
+ cout << "An unknown error has occurred in the UnifracUnweightedCommand class function initFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+}
+
+/***********************************************************************/
+
+void UnifracUnweightedCommand::output(vector<double> data){
+ try {
+ if(counter != 0){
+ string inputBuffer;
+ getline(inFile, inputBuffer);
+// out << inputBuffer << setprecision(6) << '\t' << data[0] << setprecision(globaldata->getIters().length()) << '\t' << data[1] << '\t' << data[2] << endl;
+
+ out << inputBuffer << '\t' << setprecision(6) << data[0] << setprecision(globaldata->getIters().length()) << '\t' << data[1] << '\t' << data[2] << endl;
+ }
+ else{
+ out << setprecision(6) << data[0] << setprecision(globaldata->getIters().length()) << '\t' << data[1] << '\t' << data[2] << endl;
+ }
+
+ }
+ catch(exception& e) {
+ cout << "Standard Error: " << e.what() << " has occurred in the UnifracUnweightedCommand class Function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+ catch(...) {
+ cout << "An unknown error has occurred in the UnifracUnweightedCommand class function output. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+};
+
+/***********************************************************************/
+
+void UnifracUnweightedCommand::resetFile(){
+ try {
+ if(counter != 0){
+ out.close();
+ inFile.close();
+ }
+ else{
+ out.close();
+ }
+ counter = 1;
+
+ remove(unweightedFile.c_str());
+ rename(unweightedFileout.c_str(), unweightedFile.c_str());
+ }
+ catch(exception& e) {
+ cout << "Standard Error: " << e.what() << " has occurred in the UnifracUnweightedCommand class Function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+ catch(...) {
+ cout << "An unknown error has occurred in the UnifracUnweightedCommand class function resetFile. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
+ exit(1);
+ }
+}
+