X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=getoturepcommand.cpp;h=6b2570c9808ab9083a06c4fc41439c6fd99b22e2;hb=d051154d778b77ba36dc603bbdb3c148a62a8e33;hp=89c62faba2f0d3350d3dea797bd2bebbe23074c3;hpb=ccaad73f103d8f105264d65491ce19e5df80477d;p=mothur.git diff --git a/getoturepcommand.cpp b/getoturepcommand.cpp index 89c62fa..6b2570c 100644 --- a/getoturepcommand.cpp +++ b/getoturepcommand.cpp @@ -70,7 +70,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("list"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["list"] = inputDir + it->second; } } @@ -78,7 +78,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("fasta"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["fasta"] = inputDir + it->second; } } @@ -86,7 +86,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("phylip"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["phylip"] = inputDir + it->second; } } @@ -94,7 +94,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("column"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["column"] = inputDir + it->second; } } @@ -102,7 +102,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("name"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["name"] = inputDir + it->second; } } @@ -110,7 +110,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { it = parameters.find("group"); //user has given a template file if(it != parameters.end()){ - path = hasPath(it->second); + path = m->hasPath(it->second); //if the user has not given a path then, add inputdir. else leave path alone. if (path == "") { parameters["group"] = inputDir + it->second; } } @@ -153,7 +153,7 @@ GetOTURepCommand::GetOTURepCommand(string option) { label = validParameter.validFile(parameters, "label", false); if (label == "not found") { label = ""; allLines = 1; } else { - if(label != "all") { splitAtDash(label, labels); allLines = 0; } + if(label != "all") { m->splitAtDash(label, labels); allLines = 0; } else { allLines = 1; } } @@ -179,13 +179,13 @@ GetOTURepCommand::GetOTURepCommand(string option) { m->mothurOut("You must provide a groupfile to use groups."); m->mothurOutEndLine(); abort = true; }else { - splitAtDash(groups, Groups); + m->splitAtDash(groups, Groups); } } globaldata->Groups = Groups; string temp = validParameter.validFile(parameters, "large", false); if (temp == "not found") { temp = "F"; } - large = isTrue(temp); + large = m->isTrue(temp); temp = validParameter.validFile(parameters, "precision", false); if (temp == "not found") { temp = "100"; } convert(temp, precision); @@ -307,7 +307,7 @@ int GetOTURepCommand::execute(){ delete nameMap; //openfile for getMap to use - openInputFile(distFile, inRow); + m->openInputFile(distFile, inRow); if (m->control_pressed) { inRow.close(); remove(distFile.c_str()); return 0; } } @@ -322,7 +322,7 @@ int GetOTURepCommand::execute(){ names.clear(); binnames = globaldata->gListVector->get(i); - splitAtComma(binnames, names); + m->splitAtComma(binnames, names); for (int j = 0; j < names.size(); j++) { nameToIndex[names[j]] = i; @@ -386,7 +386,7 @@ int GetOTURepCommand::execute(){ userLabels.erase(list->getLabel()); } - if ((anyLabelsToProcess(list->getLabel(), userLabels, "") == true) && (processedLabels.count(lastLabel) != 1)) { + if ((m->anyLabelsToProcess(list->getLabel(), userLabels, "") == true) && (processedLabels.count(lastLabel) != 1)) { string saveLabel = list->getLabel(); delete list; @@ -489,7 +489,7 @@ int GetOTURepCommand::execute(){ void GetOTURepCommand::readNamesFile() { try { vector dupNames; - openInputFile(namefile, inNames); + m->openInputFile(namefile, inNames); string name, names, sequence; @@ -500,7 +500,7 @@ void GetOTURepCommand::readNamesFile() { dupNames.clear(); //parse names into vector - splitAtComma(names, dupNames); + m->splitAtComma(names, dupNames); //store names in fasta map sequence = fasta->getSequence(name); @@ -508,7 +508,7 @@ void GetOTURepCommand::readNamesFile() { fasta->push_back(dupNames[i], sequence); } - gobble(inNames); + m->gobble(inNames); } inNames.close(); @@ -598,15 +598,15 @@ int GetOTURepCommand::process(ListVector* processList) { string nameRep; //create output file - if (outputDir == "") { outputDir += hasPath(listfile); } + if (outputDir == "") { outputDir += m->hasPath(listfile); } ofstream newNamesOutput; string outputNamesFile; map filehandles; if (Groups.size() == 0) { //you don't want to use groups - outputNamesFile = outputDir + getRootName(getSimpleName(listfile)) + processList->getLabel() + ".rep.names"; - openOutputFile(outputNamesFile, newNamesOutput); + outputNamesFile = outputDir + m->getRootName(m->getSimpleName(listfile)) + processList->getLabel() + ".rep.names"; + m->openOutputFile(outputNamesFile, newNamesOutput); outputNames.push_back(outputNamesFile); outputNameFiles[outputNamesFile] = processList->getLabel(); }else{ //you want to use groups @@ -614,9 +614,9 @@ int GetOTURepCommand::process(ListVector* processList) { for (int i=0; igetLabel() + "." + Groups[i] + ".rep.names"; + outputNamesFile = outputDir + m->getRootName(m->getSimpleName(listfile)) + processList->getLabel() + "." + Groups[i] + ".rep.names"; - openOutputFile(outputNamesFile, *(temp)); + m->openOutputFile(outputNamesFile, *(temp)); outputNames.push_back(outputNamesFile); outputNameFiles[outputNamesFile] = processList->getLabel() + "." + Groups[i]; } @@ -639,7 +639,7 @@ int GetOTURepCommand::process(ListVector* processList) { string temp = processList->get(i); vector namesInBin; - splitAtComma(temp, namesInBin); + m->splitAtComma(temp, namesInBin); if (Groups.size() == 0) { nameRep = findRep(namesInBin); @@ -655,7 +655,7 @@ int GetOTURepCommand::process(ListVector* processList) { if (thisgroup == "not found") { m->mothurOut(namesInBin[j] + " is not in your groupfile, please correct."); m->mothurOutEndLine(); m->control_pressed = true; } - if (inUsersGroups(thisgroup, Groups)) { //add this name to correct group + if (m->inUsersGroups(thisgroup, Groups)) { //add this name to correct group NamesInGroup[thisgroup].push_back(namesInBin[j]); } } @@ -701,27 +701,27 @@ int GetOTURepCommand::processNames(string filename, string label) { try{ //create output file - if (outputDir == "") { outputDir += hasPath(listfile); } - string outputFileName = outputDir + getRootName(getSimpleName(listfile)) + label + ".rep.fasta"; - openOutputFile(outputFileName, out); + if (outputDir == "") { outputDir += m->hasPath(listfile); } + string outputFileName = outputDir + m->getRootName(m->getSimpleName(listfile)) + label + ".rep.fasta"; + m->openOutputFile(outputFileName, out); vector reps; outputNames.push_back(outputFileName); ofstream out2; string tempNameFile = filename + ".temp"; - openOutputFile(tempNameFile, out2); + m->openOutputFile(tempNameFile, out2); ifstream in; - openInputFile(filename, in); + m->openInputFile(filename, in); int i = 0; while (!in.eof()) { string rep, binnames; - in >> i >> rep >> binnames; gobble(in); + in >> i >> rep >> binnames; m->gobble(in); out2 << rep << '\t' << binnames << endl; vector names; - splitAtComma(binnames, names); + m->splitAtComma(binnames, names); int binsize = names.size(); //if you have a groupfile @@ -755,7 +755,7 @@ int GetOTURepCommand::processNames(string filename, string label) { if (sequence != "not found") { if (sorted == "") { //print them out - rep = rep + "|" + toString(i+1); + rep = rep + "\t" + toString(i+1); rep = rep + "|" + toString(binsize); if (groupfile != "") { rep = rep + "|" + group; @@ -781,7 +781,7 @@ int GetOTURepCommand::processNames(string filename, string label) { //print them for (int i = 0; i < reps.size(); i++) { string sequence = fasta->getSequence(reps[i].name); - string outputName = reps[i].name + "|" + toString(reps[i].bin); + string outputName = reps[i].name + "\t" + toString(reps[i].bin); outputName = outputName + "|" + toString(reps[i].size); if (groupfile != "") { outputName = outputName + "|" + reps[i].group; @@ -790,10 +790,12 @@ int GetOTURepCommand::processNames(string filename, string label) { out << sequence << endl; } } - + + in.close(); out.close(); out2.close(); + remove(filename.c_str()); rename(tempNameFile.c_str(), filename.c_str()); return 0;