Another edge case in left alignment for indels: deal with cases when insertions are ambiguously placed at ends of reads

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@3715 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
ebanks 2010-07-04 17:26:38 +00:00
parent 9ec393bfce
commit be8740b00d
1 changed files with 6 additions and 2 deletions

View File

@ -401,8 +401,12 @@ public class AlignmentUtils {
CigarElement ce = cigar.getCigarElement(indexOfIndel-1);
elements.add(new CigarElement(ce.getLength()-1, ce.getOperator()));
elements.add(cigar.getCigarElement(indexOfIndel));
ce = cigar.getCigarElement(indexOfIndel+1);
elements.add(new CigarElement(ce.getLength()+1, ce.getOperator()));
if ( indexOfIndel+1 < cigar.numCigarElements() ) {
ce = cigar.getCigarElement(indexOfIndel+1);
elements.add(new CigarElement(ce.getLength()+1, ce.getOperator()));
} else {
elements.add(new CigarElement(1, CigarOperator.M));
}
// get the last few elements
for ( int i = indexOfIndel + 2; i < cigar.numCigarElements(); i++)