diff --git a/java/src/org/broadinstitute/sting/gatk/filters/MateSameStrandFilter.java b/java/src/org/broadinstitute/sting/gatk/filters/MateSameStrandFilter.java new file mode 100755 index 000000000..9579aac05 --- /dev/null +++ b/java/src/org/broadinstitute/sting/gatk/filters/MateSameStrandFilter.java @@ -0,0 +1,18 @@ +package org.broadinstitute.sting.gatk.filters; + +import net.sf.samtools.SAMRecord; + +/** + * Created by IntelliJ IDEA. + * User: chartl + * Date: 5/18/11 + * Time: 4:25 PM + * To change this template use File | Settings | File Templates. + */ +public class MateSameStrandFilter extends ReadFilter { + + public boolean filterOut(SAMRecord read) { + return (! read.getReadPairedFlag() ) || read.getMateUnmappedFlag() || read.getDuplicateReadFlag() || + read.getReadFailsVendorQualityCheckFlag() || read.getMateNegativeStrandFlag() != read.getReadNegativeStrandFlag(); + } +} diff --git a/java/src/org/broadinstitute/sting/gatk/filters/MaxInsertSizeFilter.java b/java/src/org/broadinstitute/sting/gatk/filters/MaxInsertSizeFilter.java new file mode 100755 index 000000000..584783d34 --- /dev/null +++ b/java/src/org/broadinstitute/sting/gatk/filters/MaxInsertSizeFilter.java @@ -0,0 +1,21 @@ +package org.broadinstitute.sting.gatk.filters; + +import net.sf.picard.filter.SamRecordFilter; +import net.sf.samtools.SAMRecord; +import org.broadinstitute.sting.commandline.Argument; + +/** + * Created by IntelliJ IDEA. + * User: chartl + * Date: 5/2/11 + * Time: 12:20 PM + * To change this template use File | Settings | File Templates. + */ +public class MaxInsertSizeFilter extends ReadFilter { + @Argument(fullName = "maxInsertSize", shortName = "maxInsert", doc="Discard reads with insert size greater than the specified value, defaults to 1000000", required=false) + private int maxInsertSize = 1000000; + + public boolean filterOut(SAMRecord record) { + return (record.getReadPairedFlag() && (record.getInferredInsertSize() > maxInsertSize || record.getInferredInsertSize() < -1*maxInsertSize)); + } +}