Minor update

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@4094 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
ebanks 2010-08-24 05:17:10 +00:00
parent 44f3c5639a
commit 9fb151f417
1 changed files with 12 additions and 1 deletions

View File

@ -55,7 +55,7 @@ public class RealignedReadCounter extends ReadWalker<Integer, Integer> {
// the current interval in the list // the current interval in the list
private GenomeLoc currentInterval = null; private GenomeLoc currentInterval = null;
private long updatedIntervals = 0, updatedReads = 0; private long updatedIntervals = 0, updatedReads = 0, affectedBases = 0;
private boolean intervalWasUpdated = false; private boolean intervalWasUpdated = false;
public void initialize() { public void initialize() {
@ -92,6 +92,7 @@ public class RealignedReadCounter extends ReadWalker<Integer, Integer> {
if ( !intervalWasUpdated ) { if ( !intervalWasUpdated ) {
intervalWasUpdated = true; intervalWasUpdated = true;
updatedIntervals++; updatedIntervals++;
affectedBases += 20 + getIndelSize(read);
} }
updatedReads++; updatedReads++;
@ -106,6 +107,15 @@ public class RealignedReadCounter extends ReadWalker<Integer, Integer> {
return 0; return 0;
} }
private int getIndelSize(SAMRecord read) {
for ( CigarElement ce : read.getCigar().getCigarElements() ) {
if ( ce.getOperator() == CigarOperator.I || ce.getOperator() == CigarOperator.D )
return ce.getLength();
}
logger.warn("We didn't see an indel for this read: " + read.getReadName() + " " + read.getAlignmentStart() + " " + read.getCigar());
return 0;
}
private boolean doNotTryToClean(SAMRecord read) { private boolean doNotTryToClean(SAMRecord read) {
return read.getReadUnmappedFlag() || return read.getReadUnmappedFlag() ||
read.getNotPrimaryAlignmentFlag() || read.getNotPrimaryAlignmentFlag() ||
@ -126,5 +136,6 @@ public class RealignedReadCounter extends ReadWalker<Integer, Integer> {
public void onTraversalDone(Integer result) { public void onTraversalDone(Integer result) {
System.out.println(updatedIntervals + " intervals were updated"); System.out.println(updatedIntervals + " intervals were updated");
System.out.println(updatedReads + " reads were updated"); System.out.println(updatedReads + " reads were updated");
System.out.println(affectedBases + " bases were affected");
} }
} }