From 3896cc8f1744b74fffd1c70eb1f097b75c72e481 Mon Sep 17 00:00:00 2001 From: ebanks Date: Tue, 31 Mar 2009 05:02:33 +0000 Subject: [PATCH] Moved avg depth of coverage functionality into the core depth of coverage walker. Used new command line args for walkers. git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@234 348d0f76-0448-11de-a6fe-93d51630548a --- .../gatk/walkers/DepthOfCoverageWalker.java | 25 ++++++++++++----- .../walkers/AvgDepthOfCoverageWalker.java | 28 ------------------- 2 files changed, 18 insertions(+), 35 deletions(-) delete mode 100644 java/src/org/broadinstitute/sting/playground/gatk/walkers/AvgDepthOfCoverageWalker.java diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/DepthOfCoverageWalker.java b/java/src/org/broadinstitute/sting/gatk/walkers/DepthOfCoverageWalker.java index 4643f4ecf..488a85da0 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/DepthOfCoverageWalker.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/DepthOfCoverageWalker.java @@ -2,7 +2,8 @@ package org.broadinstitute.sting.gatk.walkers; import org.broadinstitute.sting.gatk.LocusContext; import org.broadinstitute.sting.gatk.refdata.ReferenceOrderedDatum; - +import org.broadinstitute.sting.utils.cmdLine.Argument; +import org.broadinstitute.sting.utils.Pair; import java.util.List; /** @@ -12,15 +13,25 @@ import java.util.List; * Time: 3:22:14 PM * To change this template use File | Settings | File Templates. */ -public class DepthOfCoverageWalker extends LocusWalker { +public class DepthOfCoverageWalker extends LocusWalker> { + @Argument(fullName="printall",required=false,defaultValue="true") + public String printAllLoci; // booleans don't work + public Integer map(List rodData, char ref, LocusContext context) { - out.printf("%s: %d%n", context.getLocation(), context.getReads().size() ); - return 1; + if (printAllLoci.equals("true")) + out.printf("%s: %d%n", context.getLocation(), context.getReads().size() ); + return context.getReads().size(); } - public Integer reduceInit() { return 0; } + public Pair reduceInit() { return new Pair((long)0,(long)0); } - public Integer reduce(Integer value, Integer sum) { - return value + sum; + public Pair reduce(Integer value, Pair sum) { + long left = new Long(value.longValue() + sum.getFirst().longValue()); + long right = new Long(sum.getSecond().longValue() + 1); + return new Pair(left, right); + } + + public void onTraversalDone(Pair result) { + out.println("Average depth of coverage is: " + ((double)result.getFirst() / (double)result.getSecond())); } } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/AvgDepthOfCoverageWalker.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/AvgDepthOfCoverageWalker.java deleted file mode 100644 index 83c6f5434..000000000 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/AvgDepthOfCoverageWalker.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.broadinstitute.sting.playground.gatk.walkers; - -import org.broadinstitute.sting.utils.Pair; -import org.broadinstitute.sting.gatk.LocusContext; -import org.broadinstitute.sting.gatk.refdata.ReferenceOrderedDatum; -import org.broadinstitute.sting.gatk.walkers.LocusWalker; -import org.broadinstitute.sting.gatk.walkers.WalkerName; -import java.util.List; - -@WalkerName("Average_Depth_Of_Coverage") -public class AvgDepthOfCoverageWalker extends LocusWalker> { - - public Integer map(List rodData, char ref, LocusContext context) { - return context.getReads().size(); - } - - public Pair reduceInit() { return new Pair((long)0,(long)0); } - - public Pair reduce(Integer value, Pair sum) { - long left = new Long(value.longValue() + sum.getFirst().longValue()); - long right = new Long(sum.getSecond().longValue() + 1); - return new Pair(left, right); - } - - public void onTraversalDone(Pair result) { - System.out.println("Average depth of coverage is: " + ((double)result.getFirst() / (double)result.getSecond())); - } -}