@Override public void update2( VariantContext eval, VariantContext comp, RefMetaDataTracker tracker, ReferenceContext ref, AlignmentContext context) { if (comp != null) { // we only need to consider sites in comp if (REQUIRE_IDENTICAL_ALLELES && (eval != null && haveDifferentAltAlleles(eval, comp))) nDifferentAlleleSites++; else { SiteStatus evalStatus = calcSiteStatus(eval); final Set<String> evalSamples = getWalker().getSampleNamesForEvaluation(); if (comp.hasGenotypes() && !evalSamples.isEmpty() && comp.hasGenotypes(evalSamples)) // if we have genotypes in both eval and comp, subset comp down just the samples in eval comp = comp.subContextFromSamples(evalSamples, false); SiteStatus compStatus = calcSiteStatus(comp); counts[compStatus.ordinal()][evalStatus.ordinal()]++; } } }
private int getCounts(SiteStatus comp, SiteStatus eval) { return counts[comp.ordinal()][eval.ordinal()]; }