From e95f4279652a75662ac4dd8054f8da35aaf310d2 Mon Sep 17 00:00:00 2001 From: asivache Date: Tue, 7 Apr 2009 14:49:20 +0000 Subject: [PATCH] Added isReference() to AllelicVariant and updated rodDbSNP accordingly git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@311 348d0f76-0448-11de-a6fe-93d51630548a --- .../broadinstitute/sting/gatk/refdata/AllelicVariant.java | 7 +++++++ .../org/broadinstitute/sting/gatk/refdata/rodDbSNP.java | 1 + 2 files changed, 8 insertions(+) diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/AllelicVariant.java b/java/src/org/broadinstitute/sting/gatk/refdata/AllelicVariant.java index 99160d2e0..62e526de7 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/AllelicVariant.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/AllelicVariant.java @@ -53,6 +53,13 @@ public interface AllelicVariant extends Comparable { * @return alternative allele base on the forward starnd */ char getAltSnpFWD() throws IllegalStateException; + + /** Returns true if all observed alleles are reference alleles. All is methods (where Variant=SNP,Insertion, etc) should + * return false at such site to ensure consistency. This method is included for use with genotyping calls (isGenotype()==true), it makes + * no sense for, e.g. dbSNP and should return false for the latter. + * @return + */ + boolean isReference(); /** Is this variant a SNP? * diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/rodDbSNP.java b/java/src/org/broadinstitute/sting/gatk/refdata/rodDbSNP.java index d62c9d067..0cb0093db 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/rodDbSNP.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/rodDbSNP.java @@ -116,6 +116,7 @@ public class rodDbSNP extends ReferenceOrderedDatum implements AllelicVariant { public boolean isInsertion() { return varType.contains("insertion"); } public boolean isDeletion() { return varType.contains("deletion"); } public boolean isIndel() { return isInsertion() || isDeletion() || varType.contains("in-del"); } + public boolean isReference() { return false; } // snp locations are never "reference", there's always a snp!! public boolean isHapmap() { return validationStatus.contains("by-hapmap"); } public boolean is2Hit2Allele() { return validationStatus.contains("by-2hit-2allele"); }