diff --git a/public/bam2wig/src/main/scala/nl/lumc/sasc/biopet/pipelines/bamtobigwig/Bam2Wig.scala b/public/bam2wig/src/main/scala/nl/lumc/sasc/biopet/pipelines/bamtobigwig/Bam2Wig.scala
index fb9e39611fd861f9158503581f17d4bd12e6cb30..4e65a7f59f765d0c4c00cc2bbff980ce8bb1b5ce 100644
--- a/public/bam2wig/src/main/scala/nl/lumc/sasc/biopet/pipelines/bamtobigwig/Bam2Wig.scala
+++ b/public/bam2wig/src/main/scala/nl/lumc/sasc/biopet/pipelines/bamtobigwig/Bam2Wig.scala
@@ -38,6 +38,10 @@ class Bam2Wig(val root: Configurable) extends QScript with BiopetQScript {
     inputFiles :+= new InputFile(bamFile)
   }
 
+  def outputWigleFile = new File(outputDir, bamFile.getName + ".wig")
+  def outputTdfFile = new File(outputDir, bamFile.getName + ".tdf")
+  def outputBwFile = new File(outputDir, bamFile.getName + ".bw")
+
   def biopetScript(): Unit = {
     val bs = new BamToChromSizes(this)
     bs.bamFile = bamFile
@@ -48,14 +52,14 @@ class Bam2Wig(val root: Configurable) extends QScript with BiopetQScript {
     val igvCount = new IGVToolsCount(this)
     igvCount.input = bamFile
     igvCount.genomeChromSizes = bs.chromSizesFile
-    igvCount.wig = Some(new File(outputDir, bamFile.getName + ".wig"))
-    igvCount.tdf = Some(new File(outputDir, bamFile.getName + ".tdf"))
+    igvCount.wig = Some(outputWigleFile)
+    igvCount.tdf = Some(outputTdfFile)
     add(igvCount)
 
     val wigToBigWig = new WigToBigWig(this)
     wigToBigWig.inputWigFile = igvCount.wig.get
     wigToBigWig.inputChromSizesFile = bs.chromSizesFile
-    wigToBigWig.outputBigWig = new File(outputDir, bamFile.getName + ".bw")
+    wigToBigWig.outputBigWig = outputBwFile
     add(wigToBigWig)
   }
 }
diff --git a/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala b/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
index fa1494e6c6693d28df1fea45c053a09dee52937d..47532b3297d6b96fe99391e3b39a657a22ca7b9e 100644
--- a/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
+++ b/public/mapping/src/main/scala/nl/lumc/sasc/biopet/pipelines/mapping/Mapping.scala
@@ -109,7 +109,14 @@ class Mapping(val root: Configurable) extends QScript with SummaryQScript with S
   /** File to add to the summary */
   def summaryFiles: Map[String, File] = Map("output_bam" -> finalBamFile, "input_R1" -> inputR1,
     "reference" -> referenceFasta()) ++
-    (if (inputR2.isDefined) Map("input_R2" -> inputR2.get) else Map())
+    (if (inputR2.isDefined) Map("input_R2" -> inputR2.get) else Map()) ++
+    (bam2wig match {
+      case Some(b) => Map(
+        "output_wigle" -> b.outputWigleFile,
+        "output_tdf" -> b.outputTdfFile,
+        "output_bigwig" -> b.outputBwFile)
+      case _ => Map()
+    })
 
   /** Settings to add to summary */
   def summarySettings = Map(
@@ -270,12 +277,15 @@ class Mapping(val root: Configurable) extends QScript with SummaryQScript with S
       add(gears)
     }
 
-    if (config("generate_wig", default = false).asBoolean)
-      addAll(Bam2Wig(this, finalBamFile).functions)
+    bam2wig.foreach(add(_))
 
     addSummaryJobs()
   }
 
+  protected lazy val bam2wig = if (config("generate_wig", default = false)) {
+    Some(Bam2Wig(this, finalBamFile))
+  } else None
+
   /** Add bwa aln jobs */
   def addBwaAln(R1: File, R2: Option[File], output: File): File = {
     val bwaAlnR1 = new BwaAln(this)