X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=listotulabelscommand.cpp;h=4a12197b9f21534173c92f6d99c389a3aabb907f;hb=3cd964b03f04bc569c4a7d0b99be9908c54c1d44;hp=93b1510d22bc04cc19fec975df447381285b7788;hpb=e0b6040c7b6ad4ecdad4aa90b4326c0528379178;p=mothur.git diff --git a/listotulabelscommand.cpp b/listotulabelscommand.cpp index 93b1510..4a12197 100644 --- a/listotulabelscommand.cpp +++ b/listotulabelscommand.cpp @@ -46,6 +46,27 @@ string ListOtuLabelsCommand::getHelpString(){ exit(1); } } +//********************************************************************************************************************** +string ListOtuLabelsCommand::getOutputFileNameTag(string type, string inputName=""){ + try { + string outputFileName = ""; + map >::iterator it; + + //is this a type this command creates + it = outputTypes.find(type); + if (it == outputTypes.end()) { m->mothurOut("[ERROR]: this command doesn't create a " + type + " output file.\n"); } + else { + if (type == "otulabels") { outputFileName = "otulabels"; } + else { m->mothurOut("[ERROR]: No definition for type " + type + " output file tag.\n"); m->control_pressed = true; } + } + return outputFileName; + } + catch(exception& e) { + m->errorOut(e, "ListOtuLabelsCommand", "getOutputFileNameTag"); + exit(1); + } +} + //********************************************************************************************************************** ListOtuLabelsCommand::ListOtuLabelsCommand(){ try { @@ -344,7 +365,7 @@ int ListOtuLabelsCommand::execute(){ int ListOtuLabelsCommand::createList(vector& lookup){ try { - string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + ".otu.labels"; + string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + "." + getOutputFileNameTag("otulabels"); outputNames.push_back(outputFileName); outputTypes["otulabels"].push_back(outputFileName); ofstream out; m->openOutputFile(outputFileName, out); @@ -366,7 +387,7 @@ int ListOtuLabelsCommand::createList(vector& lookup){ int ListOtuLabelsCommand::createList(vector& lookup){ try { - string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + ".otu.labels"; + string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + "." + getOutputFileNameTag("otulabels"); outputNames.push_back(outputFileName); outputTypes["accnos"].push_back(outputFileName); ofstream out; m->openOutputFile(outputFileName, out);