Commit 505c29de authored by Mathieu Giraud's avatar Mathieu Giraud

core/segment.cpp: findCDR3() now uses the 'marked_pos' from DP backtrack

This solves the problem identified in 0aae0cf8.
parent e2bff0aa
......@@ -1067,6 +1067,15 @@ void FineSegmenter::findCDR3(){
if (JUNCTIONstart < 1 || JUNCTIONend > getSequence().sequence.length())
return ;
JUNCTIONstart = box_V->marked_pos;
JUNCTIONend = box_J->marked_pos;
// There are two cases when we can not detect a JUNCTION/CDR3:
// - Germline V or J gene has no 'marked_pos'
// - Sequence may be too short on either side, and thus the backtrack did not find a suitable 'marked_pos'
if (JUNCTIONstart == 0 || JUNCTIONend == 0)
return;
// IMGT-CDR3 is, on each side, 3 nucleotides shorter than IMGT-JUNCTION
CDR3start = JUNCTIONstart + 3;
CDR3end = JUNCTIONend - 3;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment