From 1cae92e963d663112b8a030b64a082187e14acf3 Mon Sep 17 00:00:00 2001 From: Eric Coissac Date: Wed, 24 Jun 2009 08:09:39 +0000 Subject: [PATCH] Add minus -R option to localize aplicon over one of the sequence database. This option add two column on the right of the output table with the primers location and the barcode sequence git-svn-id: https://www.grenoble.prabi.fr/svn/LECASofts/ecoPrimers/trunk@219 60f365c0-8329-0410-b2a4-ec073aeeaa1d --- src/ecoprimer.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/ecoprimer.c b/src/ecoprimer.c index 98e4f76..e8d7ff3 100644 --- a/src/ecoprimer.c +++ b/src/ecoprimer.c @@ -160,6 +160,10 @@ void printapair(int32_t index,ppair_t pair, poptions_t options) bool_t good1=pair->p1->good; bool_t good2=pair->p2->good; bool_t goodtmp; + bool_t strand; + uint32_t i; + + char *c; if (!asdirect1) w1=ecoComplementWord(w1,options->primer_length); @@ -211,9 +215,9 @@ void printapair(int32_t index,ppair_t pair, poptions_t options) if (options->refseq && pair->refsequence >=0) { printf("\t%s:",options->reference); + strand = pair->pcr.amplifias[pair->refsequence].strand; - - if (pair->pcr.amplifias[pair->refsequence].strand) + if (strand) printf("join("); else printf("complement("); @@ -226,6 +230,14 @@ void printapair(int32_t index,ppair_t pair, poptions_t options) printf(")"); printf("\t"); + for (c=pair->pcr.amplifias[pair->refsequence].amplifia, + i=pair->pcr.amplifias[pair->refsequence].begin; + i<=pair->pcr.amplifias[pair->refsequence].end; + i++, + c+=(strand)? 1:-1) + printf("%c","acgt"[(strand)? (*c):(~*c)&3]); + + } printf("\n");