X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=readotucommand.cpp;h=bb866ed9364557765a38ad78cf1bb047ea502fc9;hb=28d65de5f06f5b033109a3b8bbb6d3c4060914d3;hp=7c3e1995ecf9315839b5f26ab9f7768d59e6ca08;hpb=cd37904452dc95b183ff313ff05720c562902487;p=mothur.git diff --git a/readotucommand.cpp b/readotucommand.cpp index 7c3e199..bb866ed 100644 --- a/readotucommand.cpp +++ b/readotucommand.cpp @@ -64,6 +64,7 @@ ReadOtuCommand::ReadOtuCommand(string option){ globaldata->setGroupFile(groupfile); groupMap = new GroupMap(groupfile); groupMap->readMap(); + globaldata->gGroupmap = groupMap; } //you are doing a list and group shared @@ -71,7 +72,7 @@ ReadOtuCommand::ReadOtuCommand(string option){ //you have not given a file if ((listfile == "") && (sharedfile == "") && (rabundfile == "") && (sabundfile == "")) { - cout << "You must enter either a listfile, rabundfile, sabundfile or a sharedfile with the read.otu command. " << endl; abort = true; + mothurOut("You must enter either a listfile, rabundfile, sabundfile or a sharedfile with the read.otu command. "); mothurOutEndLine(); abort = true; } //check for optional parameter and set defaults @@ -95,7 +96,7 @@ ReadOtuCommand::ReadOtuCommand(string option){ globaldata->allLines = allLines; //make sure user did not use both the line and label parameters - if ((line != "") && (label != "")) { cout << "You cannot use both the line and label parameters at the same time. " << endl; abort = true; } + if ((line != "") && (label != "")) { mothurOut("You cannot use both the line and label parameters at the same time. "); mothurOutEndLine(); abort = true; } orderfile = validParameter.validFile(parameters, "order", true); if (orderfile == "not open") { abort = true; } @@ -106,18 +107,13 @@ ReadOtuCommand::ReadOtuCommand(string option){ if (abort == false) { //gets whichever one of the above is set filename = globaldata->inputFileName; - read = new ReadOTUFile(filename); } } } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ReadOtuCommand class Function ReadOtuCommand. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } - catch(...) { - cout << "An unknown error has occurred in the ReadOtuCommand class function ReadOtuCommand. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + errorOut(e, "ReadOtuCommand", "ReadOtuCommand"); exit(1); } } @@ -125,29 +121,25 @@ ReadOtuCommand::ReadOtuCommand(string option){ void ReadOtuCommand::help(){ try { - cout << "The read.otu command must be run before you execute a collect.single, rarefaction.single, summary.single, " << "\n"; - cout << "collect.shared, rarefaction.shared or summary.shared command. Mothur will generate a .list, .rabund and .sabund upon completion of the cluster command " << "\n"; - cout << "or you may use your own. The read.otu command parameter options are list, rabund, sabund, shared, group, order, line and label." << "\n"; - cout << "The read.otu command can be used in two ways. The first is to read a list, rabund or sabund and run the collect.single, rarefaction.single or summary.single." << "\n"; - cout << "For this use the read.otu command should be in the following format: read.otu(list=yourListFile, order=yourOrderFile, label=yourLabels)." << "\n"; - cout << "The list, rabund or sabund parameter is required, but you may only use one of them." << "\n"; - cout << "The line and label parameters are optional but you may not use both the line and label parameters at the same time." << "\n"; - cout << "The label and line parameters are used to read specific lines in your input." << "\n"; - cout << "The second way to use the read.otu command is to read a list and a group, or a shared so you can use the collect.shared, rarefaction.shared or summary.shared commands." << "\n"; - cout << "In this case the read.otu command should be in the following format: read.otu(list=yourListFile, group=yourGroupFile, line=yourLines) or read.otu(shared=yourSharedFile). " << "\n"; - cout << "The list parameter and group paramaters or the shared paremeter is required. When using the command the second way with a list and group file read.otu command parses the .list file" << "\n"; - cout << "and separates it into groups. It outputs a .shared file containing the OTU information for each group. The read.otu command also outputs a .list file for each group. " << "\n"; - cout << "Note: No spaces between parameter labels (i.e. list), '=' and parameters (i.e.yourListfile)." << "\n" << "\n"; + mothurOut("The read.otu command must be run before you execute a collect.single, rarefaction.single, summary.single, \n"); + mothurOut("collect.shared, rarefaction.shared or summary.shared command. Mothur will generate a .list, .rabund and .sabund upon completion of the cluster command \n"); + mothurOut("or you may use your own. The read.otu command parameter options are list, rabund, sabund, shared, group, order, line and label.\n"); + mothurOut("The read.otu command can be used in two ways. The first is to read a list, rabund or sabund and run the collect.single, rarefaction.single or summary.single.\n"); + mothurOut("For this use the read.otu command should be in the following format: read.otu(list=yourListFile, order=yourOrderFile, label=yourLabels).\n"); + mothurOut("The list, rabund or sabund parameter is required, but you may only use one of them.\n"); + mothurOut("The line and label parameters are optional but you may not use both the line and label parameters at the same time.\n"); + mothurOut("The label and line parameters are used to read specific lines in your input.\n"); + mothurOut("The second way to use the read.otu command is to read a list and a group, or a shared so you can use the collect.shared, rarefaction.shared or summary.shared commands.\n"); + mothurOut("In this case the read.otu command should be in the following format: read.otu(list=yourListFile, group=yourGroupFile, line=yourLines) or read.otu(shared=yourSharedFile). \n"); + mothurOut("The list parameter and group paramaters or the shared paremeter is required. When using the command the second way with a list and group file read.otu command parses the .list file\n"); + mothurOut("and separates it into groups. It outputs a .shared file containing the OTU information for each group. The read.otu command also outputs a .list file for each group. \n"); + mothurOut("Note: No spaces between parameter labels (i.e. list), '=' and parameters (i.e.yourListfile).\n\n"); } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ReadOtuCommand class Function help. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + errorOut(e, "ReadOtuCommand", "help"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ReadOtuCommand class function help. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } @@ -155,8 +147,7 @@ void ReadOtuCommand::help(){ //********************************************************************************************************************** ReadOtuCommand::~ReadOtuCommand(){ - if (abort == false) { delete read; } -} + } //********************************************************************************************************************** @@ -165,18 +156,12 @@ int ReadOtuCommand::execute(){ if (abort == true) { return 0; } - read->read(&*globaldata); if (globaldata->getFormat() == "shared") { - groupMap->readMap(); - //if (globaldata->gGroupmap != NULL) { delete globaldata->gGroupmap; } - globaldata->gGroupmap = groupMap; shared = new SharedCommand(); shared->execute(); - - parselist = new ParseListCommand(); - parselist->execute(); - + delete shared; + //change format to shared to speed up commands globaldata->setFormat("sharedfile"); globaldata->setListFile(""); @@ -186,11 +171,7 @@ int ReadOtuCommand::execute(){ return 0; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ReadOtuCommand class Function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } - catch(...) { - cout << "An unknown error has occurred in the ReadOtuCommand class function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + errorOut(e, "ReadOtuCommand", "execute"); exit(1); } }