X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=pcrseqscommand.h;h=baeca4eedc66ac9aa38acaa4b7d65bfebca56410;hb=8e67e9de1b200106bea5a468ac02125954656499;hp=03092bca2a70da8428e77f5599e6ab200c2b8960;hpb=91a27e0483827c06c21c4fe89558923bbfe86573;p=mothur.git diff --git a/pcrseqscommand.h b/pcrseqscommand.h index 03092bc..baeca4e 100644 --- a/pcrseqscommand.h +++ b/pcrseqscommand.h @@ -25,6 +25,7 @@ public: vector setParameters(); string getCommandName() { return "pcr.seqs"; } string getCommandCategory() { return "Sequence Processing"; } + string getOutputFileNameTag(string, string); string getHelpString(); string getCitation() { return "http://www.mothur.org/wiki/Pcr.seqs"; } string getDescription() { return "pcr.seqs"; } @@ -45,7 +46,7 @@ private: bool getOligos(vector >&, vector >&, vector >&); bool abort, keepprimer, keepdots; string fastafile, oligosfile, taxfile, groupfile, namefile, ecolifile, outputDir, nomatch; - int start, end, pdiffs, processors, length; + int start, end, processors, length; vector revPrimer, outputNames; vector primers; @@ -315,11 +316,11 @@ static DWORD WINAPI MyPcrThreadFunction(LPVOID lpParam){ pDataArray->m->mothurOut("[ERROR]: seqs are not the same length as ecoli seq. When using ecoli option your sequences must be aligned and the same length as the ecoli sequence.\n"); pDataArray->m->control_pressed = true; break; }else { if (pDataArray->keepdots) { - currSeq.filterToPos(start); - currSeq.filterFromPos(end); + currSeq.filterToPos(pDataArray->start); + currSeq.filterFromPos(pDataArray->end); }else { - string seqString = currSeq.getAligned().substr(0, end); - seqString = seqString.substr(start); + string seqString = currSeq.getAligned().substr(0, pDataArray->end); + seqString = seqString.substr(pDataArray->start); currSeq.setAligned(seqString); } } @@ -331,17 +332,17 @@ static DWORD WINAPI MyPcrThreadFunction(LPVOID lpParam){ if (pDataArray->end != -1) { if (pDataArray->end > currSeq.getAligned().length()) { pDataArray->m->mothurOut("[ERROR]: end is longer than your sequence length, aborting.\n"); pDataArray->m->control_pressed = true; break; } else { - if (pDataArray->keepdots) { currSeq.filterFromPos(end); } + if (pDataArray->keepdots) { currSeq.filterFromPos(pDataArray->end); } else { - string seqString = currSeq.getAligned().substr(0, end); + string seqString = currSeq.getAligned().substr(0, pDataArray->end); currSeq.setAligned(seqString); } } } if (pDataArray->start != -1) { - if (pDataArray->keepdots) { currSeq.filterToPos(start); } + if (pDataArray->keepdots) { currSeq.filterToPos(pDataArray->start); } else { - string seqString = currSeq.getAligned().substr(start); + string seqString = currSeq.getAligned().substr(pDataArray->start); currSeq.setAligned(seqString); } }