diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStatistics.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStratification.java similarity index 95% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStatistics.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStratification.java index 0ac083bb6..dca83af44 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStatistics.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/AbstractStratification.java @@ -57,7 +57,7 @@ import java.util.Map; * @author Mauricio Carneiro * @since 4/23/13 */ -abstract class AbstractStatistics { +abstract class AbstractStratification { private long preComputedTotalCoverage = -1; private Map statusTally = null; @@ -93,9 +93,9 @@ abstract class AbstractStatistics { * * @return the total coverage */ - private long calculateTotalCoverage(Iterable elements) { + private long calculateTotalCoverage(Iterable elements) { long cov = 0; - for (AbstractStatistics element : elements) { + for (AbstractStratification element : elements) { cov += element.getCoverage(); } return cov; @@ -109,7 +109,7 @@ abstract class AbstractStatistics { * * @return the corresponding list of elements of the extending class */ - public abstract Iterable getElements(); + public abstract Iterable getElements(); /** * Calculates the Callable statuses for the statistic as a whole (interval, sample or locus) @@ -127,7 +127,7 @@ abstract class AbstractStatistics { public Map getStatusTally() { if (statusTally == null) { statusTally = new HashMap(CallableStatus.values().length); - for (AbstractStatistics stats : getElements()) { + for (AbstractStratification stats : getElements()) { for (CallableStatus status : stats.callableStatuses()) { statusTally.put(status, !statusTally.containsKey(status) ? 1 : statusTally.get(status) + 1); } @@ -136,9 +136,9 @@ abstract class AbstractStatistics { return statusTally; } - public static List queryStatus(List statList, AbstractStatistics stratification) { + public static List queryStatus(List statList, AbstractStratification stratification) { List output = new LinkedList(); - for (Statistic stat : statList) { + for (Metric stat : statList) { final CallableStatus status = stat.status(stratification); if (status != null) { output.add(status); diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/DiagnoseTargets.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/DiagnoseTargets.java index 78a30a7bd..32f87b973 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/DiagnoseTargets.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/DiagnoseTargets.java @@ -119,7 +119,7 @@ public class DiagnoseTargets extends LocusWalker { @ArgumentCollection private ThresHolder thresholds = new ThresHolder(); - private Map intervalMap = null; // maps each interval => statistics + private Map intervalMap = null; // maps each interval => statistics private PeekableIterator intervalListIterator; // an iterator to go over all the intervals provided as we traverse the genome private Set samples = null; // all the samples being processed private static final Allele SYMBOLIC_ALLELE = Allele.create("
", false); // avoid creating the symbolic allele multiple times @@ -134,7 +134,7 @@ public class DiagnoseTargets extends LocusWalker { if (getToolkit().getIntervals() == null || getToolkit().getIntervals().isEmpty()) throw new UserException("This tool only works if you provide one or more intervals (use the -L argument). If you want to run whole genome, use -T DepthOfCoverage instead."); - intervalMap = new HashMap(INITIAL_HASH_SIZE); + intervalMap = new HashMap(INITIAL_HASH_SIZE); intervalListIterator = new PeekableIterator(getToolkit().getIntervals().iterator()); // get all of the unique sample names for the VCF Header @@ -155,8 +155,8 @@ public class DiagnoseTargets extends LocusWalker { addNewOverlappingIntervals(refLocus); // at this point, all intervals in intervalMap overlap with this locus, so update all of them - for (IntervalStatistics intervalStatistics : intervalMap.values()) - intervalStatistics.addLocus(context); + for (IntervalStratification intervalStratification : intervalMap.values()) + intervalStratification.addLocus(context); return 1L; } @@ -207,7 +207,7 @@ public class DiagnoseTargets extends LocusWalker { // output empty statistics for uncovered intervals while (interval != null && interval.isBefore(refLocus)) { - final IntervalStatistics stats = intervalMap.get(interval); + final IntervalStratification stats = intervalMap.get(interval); outputStatsToVCF(stats != null ? stats : createIntervalStatistic(interval), UNCOVERED_ALLELE); if (stats != null) intervalMap.remove(interval); intervalListIterator.next(); @@ -243,7 +243,7 @@ public class DiagnoseTargets extends LocusWalker { * @param stats The statistics of the interval * @param refAllele the reference allele */ - private void outputStatsToVCF(IntervalStatistics stats, Allele refAllele) { + private void outputStatsToVCF(IntervalStratification stats, Allele refAllele) { GenomeLoc interval = stats.getInterval(); @@ -265,7 +265,7 @@ public class DiagnoseTargets extends LocusWalker { for (String sample : samples) { final GenotypeBuilder gb = new GenotypeBuilder(sample); - SampleStatistics sampleStat = stats.getSampleStatistics(sample); + SampleStratification sampleStat = stats.getSampleStatistics(sample); gb.attribute(AVG_INTERVAL_DP_KEY, sampleStat.averageCoverage(interval.size())); gb.filters(statusToStrings(stats.getSampleStatistics(sample).callableStatuses(), false)); @@ -293,36 +293,36 @@ public class DiagnoseTargets extends LocusWalker { return output; } - private IntervalStatistics createIntervalStatistic(GenomeLoc interval) { - return new IntervalStatistics(samples, interval, thresholds); + private IntervalStratification createIntervalStatistic(GenomeLoc interval) { + return new IntervalStratification(samples, interval, thresholds); } protected static void loadAllPlugins(final ThresHolder thresholds) { - for (Class stat : new PluginManager(Locus.class).getPlugins()) { + for (Class stat : new PluginManager(LocusMetric.class).getPlugins()) { try { - final Locus stats = (Locus) stat.newInstance(); + final LocusMetric stats = (LocusMetric) stat.newInstance(); stats.initialize(thresholds); - thresholds.locusStatisticList.add(stats); + thresholds.locusMetricList.add(stats); } catch (Exception e) { throw new DynamicClassResolutionException(stat, e); } } - for (Class stat : new PluginManager(Sample.class).getPlugins()) { + for (Class stat : new PluginManager(SampleMetric.class).getPlugins()) { try { - final Sample stats = (Sample) stat.newInstance(); + final SampleMetric stats = (SampleMetric) stat.newInstance(); stats.initialize(thresholds); - thresholds.sampleStatisticList.add(stats); + thresholds.sampleMetricList.add(stats); } catch (Exception e) { throw new DynamicClassResolutionException(stat, e); } } - for (Class stat : new PluginManager(Interval.class).getPlugins()) { + for (Class stat : new PluginManager(IntervalMetric.class).getPlugins()) { try { - final Interval stats = (Interval) stat.newInstance(); + final IntervalMetric stats = (IntervalMetric) stat.newInstance(); stats.initialize(thresholds); - thresholds.intervalStatisticList.add(stats); + thresholds.intervalMetricList.add(stats); } catch (Exception e) { throw new DynamicClassResolutionException(stat, e); } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Sample.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalMetric.java similarity index 99% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Sample.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalMetric.java index 52b24520e..50470a744 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Sample.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalMetric.java @@ -53,5 +53,5 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Time: 11:30 PM * To change this template use File | Settings | File Templates. */ -interface Sample extends Statistic { +interface IntervalMetric extends Metric { } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStatistics.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStratification.java similarity index 92% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStatistics.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStratification.java index 1580ce9ac..6c20403d1 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStatistics.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/IntervalStratification.java @@ -53,21 +53,21 @@ import org.broadinstitute.sting.utils.pileup.ReadBackedPileup; import java.util.*; -final class IntervalStatistics extends AbstractStatistics{ - private final Map samples; +final class IntervalStratification extends AbstractStratification { + private final Map samples; private final GenomeLoc interval; private final ThresHolder thresholds; - public IntervalStatistics(Set samples, GenomeLoc interval, ThresHolder thresholds) { + public IntervalStratification(Set samples, GenomeLoc interval, ThresHolder thresholds) { this.interval = interval; this.thresholds = thresholds; - this.samples = new HashMap(samples.size()); + this.samples = new HashMap(samples.size()); for (String sample : samples) - this.samples.put(sample, new SampleStatistics(interval, thresholds)); + this.samples.put(sample, new SampleStratification(interval, thresholds)); } - public SampleStatistics getSampleStatistics(String sample) { - return (SampleStatistics) samples.get(sample); + public SampleStratification getSampleStatistics(String sample) { + return (SampleStratification) samples.get(sample); } public GenomeLoc getInterval() { @@ -92,12 +92,12 @@ final class IntervalStatistics extends AbstractStatistics{ for (Map.Entry entry : samplePileups.entrySet()) { String sample = entry.getKey(); ReadBackedPileup samplePileup = entry.getValue(); - SampleStatistics sampleStatistics = (SampleStatistics) samples.get(sample); + SampleStratification sampleStratification = (SampleStratification) samples.get(sample); - if (sampleStatistics == null) + if (sampleStratification == null) throw new ReviewedStingException(String.format("Trying to add locus statistics to a sample (%s) that doesn't exist in the Interval.", sample)); - sampleStatistics.addLocus(context.getLocation(), samplePileup); + sampleStratification.addLocus(context.getLocation(), samplePileup); } } @@ -106,7 +106,7 @@ final class IntervalStatistics extends AbstractStatistics{ * {@inheritDoc} */ @Override - public Iterable getElements() { + public Iterable getElements() { return samples.values(); } @@ -125,7 +125,7 @@ final class IntervalStatistics extends AbstractStatistics{ } } - output.addAll(queryStatus(thresholds.intervalStatisticList, this)); + output.addAll(queryStatus(thresholds.intervalMetricList, this)); return output; } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Locus.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetric.java similarity index 98% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Locus.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetric.java index f04a093fd..9950b4e2d 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Locus.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetric.java @@ -53,6 +53,6 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Time: 11:29 PM * To change this template use File | Settings | File Templates. */ -interface Locus extends Statistic { - public CallableStatus sampleStatus (SampleStatistics sampleStatistics); +interface LocusMetric extends Metric { + public CallableStatus sampleStatus (SampleStratification sampleStratification); } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusCoverageGap.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricCoverageGap.java similarity index 94% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusCoverageGap.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricCoverageGap.java index d40816a34..0973fef1e 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusCoverageGap.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricCoverageGap.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class LocusCoverageGap implements Locus { +final class LocusMetricCoverageGap implements LocusMetric { private double threshold; private static final CallableStatus CALL = CallableStatus.COVERAGE_GAPS; @@ -61,13 +61,13 @@ final class LocusCoverageGap implements Locus { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final LocusStatistics locusStatistics = (LocusStatistics) statistics; - return locusStatistics.getRawCoverage() == 0 ? CALL : null; + public CallableStatus status(AbstractStratification statistics) { + final LocusStratification locusStratification = (LocusStratification) statistics; + return locusStratification.getRawCoverage() == 0 ? CALL : null; } @Override - public CallableStatus sampleStatus(SampleStatistics sampleStatistics) { - return PluginUtils.genericSampleStatus(sampleStatistics, CALL, threshold); + public CallableStatus sampleStatus(SampleStratification sampleStratification) { + return PluginUtils.genericSampleStatus(sampleStratification, CALL, threshold); } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusExcessiveCoverage.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricExcessiveCoverage.java similarity index 94% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusExcessiveCoverage.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricExcessiveCoverage.java index ef1d7ffde..fbedc5404 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusExcessiveCoverage.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricExcessiveCoverage.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class LocusExcessiveCoverage implements Locus { +final class LocusMetricExcessiveCoverage implements LocusMetric { private int excessiveCoverage; private double threshold; private static final CallableStatus CALL = CallableStatus.EXCESSIVE_COVERAGE ; @@ -63,13 +63,13 @@ final class LocusExcessiveCoverage implements Locus { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final LocusStatistics locusStatistics = (LocusStatistics) statistics; - return locusStatistics.getCoverage() > excessiveCoverage ? CALL : null; + public CallableStatus status(AbstractStratification statistics) { + final LocusStratification locusStratification = (LocusStratification) statistics; + return locusStratification.getCoverage() > excessiveCoverage ? CALL : null; } @Override - public CallableStatus sampleStatus(SampleStatistics sampleStatistics) { - return PluginUtils.genericSampleStatus(sampleStatistics, CALL, threshold); + public CallableStatus sampleStatus(SampleStratification sampleStratification) { + return PluginUtils.genericSampleStatus(sampleStratification, CALL, threshold); } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusLowCoverage.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricLowCoverage.java similarity index 95% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusLowCoverage.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricLowCoverage.java index f421f5142..5b5015beb 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusLowCoverage.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricLowCoverage.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class LocusLowCoverage implements Locus { +final class LocusMetricLowCoverage implements LocusMetric { private int minCoverage; private double threshold; private static final CallableStatus CALL = CallableStatus.LOW_COVERAGE ; @@ -63,14 +63,14 @@ final class LocusLowCoverage implements Locus { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final LocusStatistics locusStatistics = (LocusStatistics) statistics; - final long raw = locusStatistics.getRawCoverage(); + public CallableStatus status(AbstractStratification statistics) { + final LocusStratification locusStratification = (LocusStratification) statistics; + final long raw = locusStratification.getRawCoverage(); return raw > 0 && raw < minCoverage ? CALL: null; } @Override - public CallableStatus sampleStatus(SampleStatistics sampleStatistics) { - return PluginUtils.genericSampleStatus(sampleStatistics, CALL, threshold); + public CallableStatus sampleStatus(SampleStratification sampleStratification) { + return PluginUtils.genericSampleStatus(sampleStratification, CALL, threshold); } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusPoorQuality.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricPoorQuality.java similarity index 94% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusPoorQuality.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricPoorQuality.java index 042ebcbf8..53c07d421 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusPoorQuality.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusMetricPoorQuality.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class LocusPoorQuality implements Locus { +final class LocusMetricPoorQuality implements LocusMetric { private int minCoverage; private double threshold; private static final CallableStatus CALL = CallableStatus.POOR_QUALITY ; @@ -63,13 +63,13 @@ final class LocusPoorQuality implements Locus { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final LocusStatistics locusStatistics = (LocusStatistics) statistics; - return locusStatistics.getCoverage() < minCoverage && locusStatistics.getRawCoverage() >= minCoverage ? CALL: null; + public CallableStatus status(AbstractStratification statistics) { + final LocusStratification locusStratification = (LocusStratification) statistics; + return locusStratification.getCoverage() < minCoverage && locusStratification.getRawCoverage() >= minCoverage ? CALL: null; } @Override - public CallableStatus sampleStatus(SampleStatistics sampleStatistics) { - return PluginUtils.genericSampleStatus(sampleStatistics, CALL, threshold); + public CallableStatus sampleStatus(SampleStratification sampleStratification) { + return PluginUtils.genericSampleStatus(sampleStratification, CALL, threshold); } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatistics.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStratification.java similarity index 95% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatistics.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStratification.java index b5a9373d5..d6acaf850 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatistics.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStratification.java @@ -49,19 +49,19 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; import java.util.LinkedList; import java.util.List; -final class LocusStatistics extends AbstractStatistics{ +final class LocusStratification extends AbstractStratification { private long coverage; private long rawCoverage; - private final List locusStatisticsList; + private final List locusStatisticsList; - public LocusStatistics(ThresHolder thresholds) { + public LocusStratification(ThresHolder thresholds) { this(0,0,thresholds); } - protected LocusStatistics(int coverage, int rawCoverage, ThresHolder thresholds) { + protected LocusStratification(int coverage, int rawCoverage, ThresHolder thresholds) { this.coverage = coverage; this.rawCoverage = rawCoverage; - this.locusStatisticsList = thresholds.locusStatisticList; + this.locusStatisticsList = thresholds.locusMetricList; } @Override @@ -80,7 +80,7 @@ final class LocusStatistics extends AbstractStatistics{ */ public List callableStatuses() { List output = new LinkedList(); - for (Statistic stats : locusStatisticsList) { + for (Metric stats : locusStatisticsList) { CallableStatus status = stats.status(this); if (status != null) { output.add(status); @@ -90,7 +90,7 @@ final class LocusStatistics extends AbstractStatistics{ } @Override - public Iterable getElements() { + public Iterable getElements() { return null; } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Statistic.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Metric.java similarity index 98% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Statistic.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Metric.java index c43b00a65..6f13b9cac 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Statistic.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Metric.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * @author Mauricio Carneiro * @since 4/23/13 */ -interface Statistic { +interface Metric { public void initialize(ThresHolder thresholds); - public CallableStatus status (AbstractStatistics statistic); + public CallableStatus status (AbstractStratification statistic); } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/PluginUtils.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/PluginUtils.java index cb28e0ac5..1085e8cac 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/PluginUtils.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/PluginUtils.java @@ -54,9 +54,9 @@ import java.util.Map; * Time: 11:23 AM */ final class PluginUtils { - public static CallableStatus genericSampleStatus (final SampleStatistics sampleStatistics, final CallableStatus CALL, final double threshold) { - final Map totals = sampleStatistics.getStatusTally(); - final int size = sampleStatistics.getIntervalSize(); + public static CallableStatus genericSampleStatus (final SampleStratification sampleStratification, final CallableStatus CALL, final double threshold) { + final Map totals = sampleStratification.getStatusTally(); + final int size = sampleStratification.getIntervalSize(); final int statusCount = totals.containsKey(CALL) ? totals.get(CALL) : 0; return ( (double) statusCount / size) >= threshold ? CALL: null; } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Interval.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetric.java similarity index 99% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Interval.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetric.java index bd8307f89..8de33b269 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/Interval.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetric.java @@ -53,5 +53,5 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Time: 11:30 PM * To change this template use File | Settings | File Templates. */ -interface Interval extends Statistic { +interface SampleMetric extends Metric { } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleBadMates.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricBadMates.java similarity index 95% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleBadMates.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricBadMates.java index 483f63c06..cf5aac4a6 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleBadMates.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricBadMates.java @@ -51,7 +51,7 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class SampleBadMates implements Sample { +final class SampleMetricBadMates implements SampleMetric { private static final CallableStatus CALL = CallableStatus.NO_READS ; private double threshold; @@ -64,10 +64,10 @@ final class SampleBadMates implements Sample { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final SampleStatistics sampleStatistics = (SampleStatistics) statistics; - final int nReads = sampleStatistics.getnReads(); - return nReads > 0 && (double) sampleStatistics.getnBadMates() / nReads > threshold ? CALL : null; + public CallableStatus status(AbstractStratification statistics) { + final SampleStratification sampleStratification = (SampleStratification) statistics; + final int nReads = sampleStratification.getnReads(); + return nReads > 0 && (double) sampleStratification.getnBadMates() / nReads > threshold ? CALL : null; } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleNoReads.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricNoReads.java similarity index 96% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleNoReads.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricNoReads.java index 1c6d3deb7..bf9e7420d 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleNoReads.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleMetricNoReads.java @@ -51,16 +51,16 @@ package org.broadinstitute.sting.gatk.walkers.diagnostics.diagnosetargets; * Date: 4/20/13 * Time: 11:44 PM */ -final class SampleNoReads implements Sample { +final class SampleMetricNoReads implements SampleMetric { private static final CallableStatus CALL = CallableStatus.NO_READS; @Override public void initialize(ThresHolder thresholds) { } @Override - public CallableStatus status(AbstractStatistics statistics) { - final SampleStatistics sampleStatistics = (SampleStatistics) statistics; - return sampleStatistics.getnReads() == 0 ? CALL : null; + public CallableStatus status(AbstractStratification statistics) { + final SampleStratification sampleStratification = (SampleStratification) statistics; + return sampleStratification.getnReads() == 0 ? CALL : null; } } diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStatistics.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStratification.java similarity index 93% rename from protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStatistics.java rename to protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStratification.java index 4d41fea16..b9ae1f3cf 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStatistics.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/SampleStratification.java @@ -51,30 +51,31 @@ import org.broadinstitute.sting.utils.exceptions.ReviewedStingException; import org.broadinstitute.sting.utils.pileup.ReadBackedPileup; import org.broadinstitute.sting.utils.sam.GATKSAMRecord; -import java.util.*; +import java.util.ArrayList; +import java.util.LinkedList; +import java.util.List; /** * The statistics calculator for a specific sample given the interval */ -final class SampleStatistics extends AbstractStatistics { +final class SampleStratification extends AbstractStratification { private final GenomeLoc interval; - private final ArrayList loci; + private final ArrayList loci; private final ThresHolder thresholds; - private Map locusStatusTally = null; private int nReads = -1; private int nBadMates = -1; - public SampleStatistics(final GenomeLoc interval, final ThresHolder thresholds) { + public SampleStratification(final GenomeLoc interval, final ThresHolder thresholds) { this.interval = interval; - this.loci = new ArrayList(interval.size()); + this.loci = new ArrayList(interval.size()); this.thresholds = thresholds; nReads = 0; nBadMates = 0; // Initialize every loci (this way we don't have to worry about non-existent loci in the object for (int i = 0; i < interval.size(); i++) - this.loci.add(new LocusStatistics(thresholds)); + this.loci.add(new LocusStratification(thresholds)); } /** @@ -99,7 +100,7 @@ final class SampleStatistics extends AbstractStatistics { final int locusIndex = locus.getStart() - interval.getStart(); final int rawCoverage = pileup.depthOfCoverage(); final int coverage = pileup.getBaseAndMappingFilteredPileup(thresholds.minimumBaseQuality, thresholds.minimumMappingQuality).depthOfCoverage(); - final LocusStatistics locusData = (LocusStatistics) loci.get(locusIndex); + final LocusStratification locusData = (LocusStratification) loci.get(locusIndex); locusData.addLocus(coverage, rawCoverage); // process all the reads in this pileup (tallying number of reads and bad mates) @@ -109,7 +110,7 @@ final class SampleStatistics extends AbstractStatistics { } @Override - public Iterable getElements() { + public Iterable getElements() { return loci; } @@ -121,15 +122,15 @@ final class SampleStatistics extends AbstractStatistics { final List output = new LinkedList(); // get the tally of all the locus callable statuses - for (Statistic locusStat : thresholds.locusStatisticList) { - final CallableStatus status = ((Locus) locusStat).sampleStatus(this); + for (Metric locusStat : thresholds.locusMetricList) { + final CallableStatus status = ((LocusMetric) locusStat).sampleStatus(this); if (status != null) { output.add(status); } } // get the sample specific statitics statuses - for (Statistic sampleStat : thresholds.sampleStatisticList) { + for (Metric sampleStat : thresholds.sampleMetricList) { final CallableStatus status = sampleStat.status(this); if (status != null) { output.add(status); diff --git a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/ThresHolder.java b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/ThresHolder.java index 42c09dda1..b0c999460 100644 --- a/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/ThresHolder.java +++ b/protected/java/src/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/ThresHolder.java @@ -114,9 +114,9 @@ final class ThresHolder { @Argument(fullName = "quality_status_threshold", shortName = "stQ", doc = "The proportion of the loci needed for calling POOR_QUALITY", required = false) public double qualityStatusThreshold = 0.50; - public final List locusStatisticList = new LinkedList(); - public final List sampleStatisticList = new LinkedList(); - public final List intervalStatisticList = new LinkedList(); + public final List locusMetricList = new LinkedList(); + public final List sampleMetricList = new LinkedList(); + public final List intervalMetricList = new LinkedList(); public ThresHolder() {} diff --git a/protected/java/test/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatisticsUnitTest.java b/protected/java/test/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatisticsUnitTest.java index d784c2a9e..fe3010e02 100644 --- a/protected/java/test/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatisticsUnitTest.java +++ b/protected/java/test/org/broadinstitute/sting/gatk/walkers/diagnostics/diagnosetargets/LocusStatisticsUnitTest.java @@ -64,7 +64,7 @@ public class LocusStatisticsUnitTest { @Test(dataProvider = "StatusTestValues") public void testCallableStatuses(int coverage, int rawCoverage, CallableStatus status) { - List statuses = new LocusStatistics(coverage, rawCoverage, thresholds).callableStatuses(); + List statuses = new LocusStratification(coverage, rawCoverage, thresholds).callableStatuses(); Assert.assertTrue((status == null) ? statuses.isEmpty() : (statuses.contains(status) && statuses.size() == 1)); }