From 7aba5a2f9fd718c27f87dbb300caad873e4d4ab1 Mon Sep 17 00:00:00 2001 From: Mark DePristo Date: Fri, 19 Jul 2013 08:45:48 -0400 Subject: [PATCH] Several improvements to AssessNA12878 and KB -- Bugfix for BAMs containing reads without real (M,I,D,N) operators. Simply needed to set validation stringency to SILENT in the read. Added a BadCigar filter to the SAMRecord stream anyway -- Add capture all sites mode to AssessNA12878: will write all sites to the badSites VCF, regardless of whether they are bad. It's useful if you essentially want to annotate a VCF with KB information for later analysis, such as computing ROC curves -- Add ignore filters mode to AssessNA12878: will as expected treat all sites in the input VCF calls as PASS, even if the site has a FILTER field setting -- Add minPNonRef argument to AssessNA12878: this will consider a site not called even if the NA12878 genotype is not 0/0 if the PLs are present and the PL for 0/0 isn't greater than this value. It allows us to easily differentiate low confidence non-ref sites obtained via multi-sample calling from highly confident non-ref calls that might be real TP or FPs --- .../sting/utils/locusiterator/LocusIteratorByState.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/public/java/src/org/broadinstitute/sting/utils/locusiterator/LocusIteratorByState.java b/public/java/src/org/broadinstitute/sting/utils/locusiterator/LocusIteratorByState.java index 6f588ac0e..2926bdc63 100644 --- a/public/java/src/org/broadinstitute/sting/utils/locusiterator/LocusIteratorByState.java +++ b/public/java/src/org/broadinstitute/sting/utils/locusiterator/LocusIteratorByState.java @@ -29,7 +29,8 @@ import com.google.java.contract.Ensures; import com.google.java.contract.Requires; import net.sf.samtools.CigarOperator; import net.sf.samtools.SAMFileReader; -import net.sf.samtools.SAMRecordIterator; +import net.sf.samtools.SAMRecord; +import net.sf.samtools.util.CloseableIterator; import org.apache.log4j.Logger; import org.broadinstitute.sting.gatk.ReadProperties; import org.broadinstitute.sting.gatk.contexts.AlignmentContext; @@ -154,7 +155,7 @@ public final class LocusIteratorByState extends LocusIterator { * @param reader a non-null reader * @param it an iterator from reader that has the reads we want to use to create ReadBackPileups */ - public LocusIteratorByState(final SAMFileReader reader, final SAMRecordIterator it) { + public LocusIteratorByState(final SAMFileReader reader, final CloseableIterator it) { this(new GATKSAMIterator(it), new LIBSDownsamplingInfo(false, 0), true,