diff --git a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/HapmapPoolAllelicInfoWalker.java b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/HapmapPoolAllelicInfoWalker.java index 98e188fac..1ad28eaee 100755 --- a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/HapmapPoolAllelicInfoWalker.java +++ b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/HapmapPoolAllelicInfoWalker.java @@ -68,11 +68,11 @@ public class HapmapPoolAllelicInfoWalker extends LocusWalker> chips = getChips(sampleNames, tracker); - Pair> alleleFreqInfo = ctt.getPooledAlleleFrequency(chips,refBase); + Pair> alleleFreqInfo = ctt.getPooledAlleleFrequency(chips,refBase); char alternate; - if ( alleleFreqInfo.getFirst() != null && alleleFreqInfo.getFirst().isVariant(refBase)) { + if ( alleleFreqInfo.first == ConcordanceTruthTable.VARIANT ) { //System.out.println(refBase + " " + alleleFreqInfo.getFirst().getBases()); - alternate = getAlternateBase(alleleFreqInfo.getFirst(),refBase); + alternate = getAlternateBase(chips,refBase); } else { return null; // early return @@ -96,8 +96,8 @@ public class HapmapPoolAllelicInfoWalker extends LocusWalker> chips, char ref) { + for ( Pair chip : chips ) { + Genotype g = chip.first; + char[] bases = g.getBases().toCharArray(); + if ( Character.toUpperCase(bases[0]) != ref ) + return bases[0]; + if ( Character.toUpperCase(bases[1]) != ref ) + return bases[1]; + } + return ref; } public PrintWriter reduce(String s, PrintWriter p) { diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/varianteval/ConcordanceTruthTable.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/varianteval/ConcordanceTruthTable.java index cd75f2659..efa300559 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/varianteval/ConcordanceTruthTable.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/varianteval/ConcordanceTruthTable.java @@ -18,18 +18,18 @@ import java.util.*; * the Broad Institute nor MIT can be responsible for its use, misuse, or functionality. */ public class ConcordanceTruthTable { - private static final int TRUE_POSITIVE = 0; - private static final int TRUE_NEGATIVE = 1; - private static final int FALSE_POSITIVE = 2; - private static final int FALSE_NEGATIVE = 3; - private static final int VARIANT = 1; + public static final int TRUE_POSITIVE = 0; + public static final int TRUE_NEGATIVE = 1; + public static final int FALSE_POSITIVE = 2; + public static final int FALSE_NEGATIVE = 3; + public static final int VARIANT = 1; private static final String[] POOL_HEADERS = {"TP","TN","FP","FN"}; - private static final int REF = 0; - private static final int VAR_HET = 1; - private static final int VAR_HOM = 2; - private static final int UNKNOWN = 3; - private static final int NO_CALL = 3; // synonym + public static final int REF = 0; + public static final int VAR_HET = 1; + public static final int VAR_HOM = 2; + public static final int UNKNOWN = 3; + public static final int NO_CALL = 3; // synonym private static final String[] TRUTH_NAMES = {"IS_REF", "IS_VAR_HET", "IS_VAR_HOM", "UNKNOWN"}; private static final String[] CALL_NAMES = {"CALLED_REF", "CALLED_VAR_HET", "CALLED_VAR_HOM", "NO_CALL"};