X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=validcalculator.cpp;h=0ade87338bb9c2b264f99200a3c7e09fac3fdd12;hb=cad05a21b084833b07808c1586e755be48fe7e1a;hp=7a07fd1af9e7eab2b7e7551cb170a852b62aa031;hpb=37a2c0b7dc68bfa53c8f38a713259929c4c46a9f;p=mothur.git diff --git a/validcalculator.cpp b/validcalculator.cpp index 7a07fd1..0ade873 100644 --- a/validcalculator.cpp +++ b/validcalculator.cpp @@ -12,6 +12,8 @@ /********************************************************************/ ValidCalculators::ValidCalculators() { try { + m = MothurOut::getInstance(); + initialSingle(); initialShared(); initialRarefaction(); @@ -23,15 +25,13 @@ ValidCalculators::ValidCalculators() { initialTreeGroups(); initialBoot(); initialDistance(); + initialMatrix(); + initialHeat(); } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function ValidCalculator. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "ValidCalculator"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function ValidCalculator. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -48,11 +48,11 @@ bool ValidCalculators::isValidCalculator(string parameter, string calculator) { if ((single.find(calculator)) != (single.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the collect.single command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the collect.single command and will be disregarded. Valid estimators are "); for (it = single.begin(); it != single.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } //are you looking for a calculator for a shared parameter }else if (parameter == "shared") { @@ -60,11 +60,11 @@ bool ValidCalculators::isValidCalculator(string parameter, string calculator) { if ((shared.find(calculator)) != (shared.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the collect.shared command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the collect.shared command and will be disregarded. Valid estimators are "); for (it = shared.begin(); it != shared.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } //are you looking for a calculator for a rarefaction parameter }else if (parameter == "rarefaction") { @@ -72,11 +72,11 @@ bool ValidCalculators::isValidCalculator(string parameter, string calculator) { if ((rarefaction.find(calculator)) != (rarefaction.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the rarefaction.single command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the rarefaction.single command and will be disregarded. Valid estimators are "); for (it = rarefaction.begin(); it != rarefaction.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } //are you looking for a calculator for a summary parameter }else if (parameter == "summary") { @@ -84,11 +84,11 @@ bool ValidCalculators::isValidCalculator(string parameter, string calculator) { if ((summary.find(calculator)) != (summary.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the summary.shared command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the summary.shared command and will be disregarded. Valid estimators are "); for (it = summary.begin(); it != summary.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } //are you looking for a calculator for a sharedsummary parameter }else if (parameter == "sharedsummary") { @@ -96,90 +96,108 @@ bool ValidCalculators::isValidCalculator(string parameter, string calculator) { if ((sharedsummary.find(calculator)) != (sharedsummary.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the summary.shared command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the summary.shared command and will be disregarded. Valid estimators are "); for (it = sharedsummary.begin(); it != sharedsummary.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "sharedrarefaction") { //is it valid if ((sharedrarefaction.find(calculator)) != (sharedrarefaction.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the rarefaction.shared command and will be disregarded. Valid estimator is "; + m->mothurOut(calculator + " is not a valid estimator for the rarefaction.shared command and will be disregarded. Valid estimator is "); for (it = sharedrarefaction.begin(); it != sharedrarefaction.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "vennsingle") { //is it valid if ((vennsingle.find(calculator)) != (vennsingle.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the venn command in single mode and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the venn command in single mode and will be disregarded. Valid estimators are "); for (it = vennsingle.begin(); it != vennsingle.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "vennshared") { //is it valid if ((vennshared.find(calculator)) != (vennshared.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the venn command in shared mode and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the venn command in shared mode and will be disregarded. Valid estimators are "); for (it = vennshared.begin(); it != vennshared.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "treegroup") { //is it valid if ((treegroup.find(calculator)) != (treegroup.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the tree.shared command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the tree.shared command and will be disregarded. Valid estimators are "); for (it = treegroup.begin(); it != treegroup.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); + } + m->mothurOutEndLine(); + return false; } + }else if (parameter == "matrix") { + //is it valid + if ((matrix.find(calculator)) != (matrix.end())) { + return true; + }else { + m->mothurOut(calculator + " is not a valid estimator for the matrix.output command and will be disregarded. Valid estimators are "); + for (it = matrix.begin(); it != matrix.end(); it++) { + m->mothurOut(it->first + ", "); + } + m->mothurOutEndLine(); + return false; } + }else if (parameter == "heat") { + //is it valid + if ((heat.find(calculator)) != (heat.end())) { + return true; + }else { + m->mothurOut(calculator + " is not a valid estimator for the heatmap.sim command and will be disregarded. Valid estimators are "); + for (it = heat.begin(); it != heat.end(); it++) { + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "boot") { //is it valid if ((boot.find(calculator)) != (boot.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the bootstrap.shared command and will be disregarded. Valid estimators are "; + m->mothurOut(calculator + " is not a valid estimator for the bootstrap.shared command and will be disregarded. Valid estimators are "); for (it = boot.begin(); it != boot.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } }else if (parameter == "distance") { //is it valid if ((distance.find(calculator)) != (distance.end())) { return true; }else { - cout << calculator << " is not a valid estimator for the distance command and will be disregarded. Valid calculators are "; + m->mothurOut(calculator + " is not a valid estimator for the distance command and will be disregarded. Valid calculators are "); for (it = distance.begin(); it != distance.end(); it++) { - cout << it->first << ", "; + m->mothurOut(it->first + ", "); } - cout << endl; + m->mothurOutEndLine(); return false; } //not a valid parameter }else { return false; } } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function isValidCalculator. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "isValidCalculator"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function isValidCalculator. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -204,16 +222,13 @@ void ValidCalculators::initialSingle() { single["efron"] = "efron"; single["boneh"] = "boneh"; single["solow"] = "solow"; + single["shen"] = "shen"; single["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialSingle"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -243,13 +258,9 @@ void ValidCalculators::initialShared() { shared["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialShared. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialShared"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialShared. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -268,13 +279,9 @@ void ValidCalculators::initialRarefaction() { rarefaction["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialRarefaction. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialRarefaction"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialRarefaction. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -300,16 +307,13 @@ void ValidCalculators::initialSummary() { summary["efron"] = "efron"; summary["boneh"] = "boneh"; summary["solow"] = "solow"; + summary["shen"] = "shen"; summary["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSummary. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialSummary"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSummary. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -339,13 +343,9 @@ void ValidCalculators::initialSharedSummary() { sharedsummary["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSharedSummary. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialSharedSummary"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSharedSummary. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } @@ -358,13 +358,9 @@ void ValidCalculators::initialSharedRarefact() { sharedrarefaction["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSharedRarefact. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialSharedRarefact"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSharedRarefact. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } @@ -378,13 +374,9 @@ void ValidCalculators::initialVennSingle() { vennsingle["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialVennSingle"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -396,13 +388,9 @@ void ValidCalculators::initialVennShared() { vennshared["default"] = "default"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialVennShared"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialSingle. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -420,14 +408,50 @@ void ValidCalculators::initialTreeGroups() { treegroup["braycurtis"] = "braycurtis"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialTreeGroups. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialTreeGroups"); + exit(1); + } +} +/********************************************************************/ +void ValidCalculators::initialHeat() { + try { + heat["jabund"] = "jabund"; + heat["sorabund"] = "sorabund"; + heat["jclass"] = "jclass"; + heat["sorclass"] = "sorclass"; + heat["jest"] = "jest"; + heat["sorest"] = "sorest"; + heat["thetayc"] = "thetayc"; + heat["thetan"] = "thetan"; + heat["morisitahorn"] = "morisitahorn"; + heat["braycurtis"] = "braycurtis"; + } + catch(exception& e) { + m->errorOut(e, "ValidCalculator", "initialHeat"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialTreeGroups. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; +} + +/********************************************************************/ +void ValidCalculators::initialMatrix() { + try { + matrix["jabund"] = "jabund"; + matrix["sorabund"] = "sorabund"; + matrix["jclass"] = "jclass"; + matrix["sorclass"] = "sorclass"; + matrix["jest"] = "jest"; + matrix["sorest"] = "sorest"; + matrix["thetayc"] = "thetayc"; + matrix["thetan"] = "thetan"; + matrix["morisitahorn"] = "morisitahorn"; + matrix["braycurtis"] = "braycurtis"; + } + catch(exception& e) { + m->errorOut(e, "ValidCalculator", "initialMatrix"); exit(1); - } + } } + /********************************************************************/ void ValidCalculators::initialBoot() { try { @@ -443,13 +467,9 @@ void ValidCalculators::initialBoot() { boot["braycurtis"] = "braycurtis"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialBoot. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialBoot"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialBoot. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ void ValidCalculators::initialDistance() { @@ -459,13 +479,9 @@ void ValidCalculators::initialDistance() { distance["onegap"] = "onegap"; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function initialDistance. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "initialDistance"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function initialDistance. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /********************************************************************/ @@ -513,6 +529,14 @@ void ValidCalculators::printCalc(string parameter, ostream& out) { for (it = treegroup.begin(); it != treegroup.end(); it++) { out << it->first << ", "; } + }else if (parameter == "matrix") { + for (it = matrix.begin(); it != matrix.end(); it++) { + out << it->first << ", "; + } + }else if (parameter == "heat") { + for (it = heat.begin(); it != heat.end(); it++) { + out << it->first << ", "; + } }else if (parameter == "boot") { for (it = boot.begin(); it != boot.end(); it++) { out << it->first << ", "; @@ -526,14 +550,9 @@ void ValidCalculators::printCalc(string parameter, ostream& out) { out << endl; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the ValidCalculator class Function printCalc. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "ValidCalculator", "printCalc"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the ValidCalculator class function printCalc. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } - } /********************************************************************/