diff --git a/src/libecoprimer/filtering.c b/src/libecoprimer/filtering.c index 79ba685..0f12492 100644 --- a/src/libecoprimer/filtering.c +++ b/src/libecoprimer/filtering.c @@ -117,6 +117,7 @@ static int32_t *ecoFilteringHashSequence(int32_t *dest, code = encoder[(*base) - 'A']; if (code <0) { + //DEBUG_LOG("Error on seq %s @ %d --> %c",seq->AC,j,*base); code = 0; error|= 1; } @@ -127,9 +128,11 @@ static int32_t *ecoFilteringHashSequence(int32_t *dest, if (!error) { + // DEBUG_LOG("No Error on %s @ %d",seq->AC,j); goodword=(uint32_t)((doublestrand) ? MINI(word,antiword):word); if (!in_last_seq[goodword]) { + // DEBUG_LOG("Store word %s",ecoUnhashWord(goodword,FWORDSIZE)) in_last_seq[goodword]=1; dest[goodword]++; } @@ -169,15 +172,17 @@ int32_t *filteringSeq(pecodnadb_t database, uint32_t seqdbsize, for (i=0;i<*size;i++) if (wordscount[i] >= sequenceQuorum) keep++; + // else if (wordscount[i]) + // DEBUG_LOG("Word : %s -> %d",ecoUnhashWord(i,FWORDSIZE),wordscount[i]); (void)ecoFilteringHashSequence((int32_t*)-1, - options->circular, + options->circular, options->doublestrand, NULL, NULL); - fprintf(stderr,"ok\n Considered word of size %d for filtering : %d\n",FWORDSIZE,keep); + fprintf(stderr,"ok\n Considered word of size %d for filtering with quorum >= %d : %d\n",FWORDSIZE,sequenceQuorum,keep); return wordscount; }