diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/RodVCF.java b/java/src/org/broadinstitute/sting/gatk/refdata/RodVCF.java index 9a6873537..df4b35557 100755 --- a/java/src/org/broadinstitute/sting/gatk/refdata/RodVCF.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/RodVCF.java @@ -304,13 +304,17 @@ public class RodVCF extends BasicReferenceOrderedDatum implements VariationRod, if (lst.size() != 1) { throw new IllegalStateException("VCF object does not have one and only one genotype record"); } + VCFGenotypeRecord rec = lst.get(0); + if ( rec.isEmptyGenotype() ) + return null; + double qual = 0; - if (lst.get(0).getAlleles().equals(this.getReference())) + if (rec.getAlleles().equals(this.getReference())) qual = refQual; - else if (lst.get(0).getFields().containsKey("GQ")) - qual = Double.valueOf(lst.get(0).getFields().get("GQ")) / 10.0; - int coverage = (lst.get(0).getFields().containsKey("RD") ? Integer.valueOf(lst.get(0).getFields().get("RD")) : 0); - return new VCFGenotypeCall(this.getReference().charAt(0), this.getLocation(), Utils.join("", lst.get(0).getAlleles()), qual, coverage, lst.get(0).getSampleName()); + else if (rec.getFields().containsKey("GQ")) + qual = Double.valueOf(rec.getFields().get("GQ")) / 10.0; + int coverage = (rec.getFields().containsKey("RD") ? Integer.valueOf(rec.getFields().get("RD")) : 0); + return new VCFGenotypeCall(this.getReference().charAt(0), this.getLocation(), Utils.join("", rec.getAlleles()), qual, coverage, rec.getSampleName()); } return null; } @@ -329,6 +333,9 @@ public class RodVCF extends BasicReferenceOrderedDatum implements VariationRod, double refQual = (this.getNegLog10PError()); // add the reference for (VCFGenotypeRecord rec : mCurrentRecord.getVCFGenotypeRecords()) { + if ( rec.isEmptyGenotype() ) + continue; + ; double qual = 0; if (rec.getAlleles().equals(this.getReference())) qual = refQual; diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/IndelSubsets.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/IndelSubsets.java index 88d488e62..0778145ab 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/IndelSubsets.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/IndelSubsets.java @@ -101,5 +101,5 @@ public class IndelSubsets implements ConcordanceType { return Math.max(leftRun, rightRun); } - public String getInfoName() { return "IS"; } + public String getInfoName() { return "IndelSubsets"; } } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/NWayVenn.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/NWayVenn.java index c44fa21db..8ad32ad52 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/NWayVenn.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/NWayVenn.java @@ -32,11 +32,11 @@ public class NWayVenn implements ConcordanceType { while ( iter.hasNext() ) { tag.append(iter.next()); if ( iter.hasNext() ) - tag.append("."); + tag.append("-"); } return tag.toString(); } - public String getInfoName() { return "NV"; } + public String getInfoName() { return "NwayVenn"; } } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SNPGenotypeConcordance.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SNPGenotypeConcordance.java index 1cde7604a..e38b82c0f 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SNPGenotypeConcordance.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SNPGenotypeConcordance.java @@ -94,5 +94,5 @@ public class SNPGenotypeConcordance implements ConcordanceType { return altAllele1 == altAllele2; } - public String getInfoName() { return "SG"; } + public String getInfoName() { return "SnpConcordance"; } } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SimpleVenn.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SimpleVenn.java index ba73a0115..4761fd825 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SimpleVenn.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/concordance/SimpleVenn.java @@ -58,5 +58,5 @@ public class SimpleVenn implements ConcordanceType { return "concordant"; } - public String getInfoName() { return "SV"; } + public String getInfoName() { return "Venn"; } } diff --git a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFGenotypeRecord.java b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFGenotypeRecord.java index 44f7b8e8d..80a4461b4 100644 --- a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFGenotypeRecord.java +++ b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFGenotypeRecord.java @@ -115,6 +115,13 @@ public class VCFGenotypeRecord { } + public boolean isEmptyGenotype() { + for ( VCFGenotypeEncoding encoding : mGenotypeAlleles ) { + if ( encoding.getType() != VCFGenotypeEncoding.TYPE.UNCALLED ) + return false; + } + return true; + } public boolean equals(Object other) { if (other instanceof VCFGenotypeRecord) {