X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=getotuscommand.cpp;h=4e8d3198c9b6c560d57ff579b26eb9985e452b35;hb=36a6b02cf7f09d2bc34376b588944a9ca73429c5;hp=d29773ca340cf1119f04c312f897a0e5f2d7d4e8;hpb=7bf9a81bba76538ecaf351ae208de3da4bf1b6dd;p=mothur.git diff --git a/getotuscommand.cpp b/getotuscommand.cpp index d29773c..4e8d319 100644 --- a/getotuscommand.cpp +++ b/getotuscommand.cpp @@ -187,7 +187,9 @@ int GetOtusCommand::execute(){ //make sure groups are valid //takes care of user setting groupNames that are invalid or setting groups=all SharedUtil* util = new SharedUtil(); - util->setGroups(Groups, groupMap->namesOfGroups); + vector gNamesOfGroups = groupMap->getNamesOfGroups(); + util->setGroups(Groups, gNamesOfGroups); + groupMap->setNamesOfGroups(gNamesOfGroups); delete util; if (m->control_pressed) { delete groupMap; return 0; } @@ -195,7 +197,7 @@ int GetOtusCommand::execute(){ //read through the list file keeping any otus that contain any sequence from the groups selected readListGroup(); - if (m->control_pressed) { for (int i = 0; i < outputNames.size(); i++) { remove(outputNames[i].c_str()); } return 0; } + if (m->control_pressed) { for (int i = 0; i < outputNames.size(); i++) { m->mothurRemove(outputNames[i]); } return 0; } if (outputNames.size() != 0) { m->mothurOutEndLine(); @@ -258,7 +260,7 @@ int GetOtusCommand::readListGroup(){ //as long as you are not at the end of the file or done wih the lines you want while((list != NULL) && (userLabels.size() != 0)) { - if (m->control_pressed) { delete list; delete input; out.close(); outGroup.close(); remove(outputFileName.c_str()); remove(outputGroupFileName.c_str());return 0; } + if (m->control_pressed) { delete list; delete input; out.close(); outGroup.close(); m->mothurRemove(outputFileName); m->mothurRemove(outputGroupFileName);return 0; } if(labels.count(list->getLabel()) == 1){ processList(list, groupMap, out, outGroup, wroteSomething); @@ -292,7 +294,7 @@ int GetOtusCommand::readListGroup(){ } - if (m->control_pressed) { if (list != NULL) { delete list; } delete input; out.close(); outGroup.close(); remove(outputFileName.c_str()); remove(outputGroupFileName.c_str()); return 0; } + if (m->control_pressed) { if (list != NULL) { delete list; } delete input; out.close(); outGroup.close(); m->mothurRemove(outputFileName); m->mothurRemove(outputGroupFileName); return 0; } //output error messages about any remaining user labels set::iterator it;