From 844ff0989189f3130af538b1d4d4b86ff5707c3e Mon Sep 17 00:00:00 2001 From: Peter van 't Hof <p.j.van_t_hof@lumc.nl> Date: Mon, 27 Jul 2015 08:53:07 +0200 Subject: [PATCH] Added sv calling to shiva --- .../lumc/sasc/biopet/pipelines/basty/BastyTrait.scala | 2 +- .../sasc/biopet/pipelines/shiva/ShivaSvCalling.scala | 2 +- .../lumc/sasc/biopet/pipelines/shiva/ShivaTrait.scala | 10 ++++++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/public/basty/src/main/scala/nl/lumc/sasc/biopet/pipelines/basty/BastyTrait.scala b/public/basty/src/main/scala/nl/lumc/sasc/biopet/pipelines/basty/BastyTrait.scala index 8aea30f2c..d93186074 100644 --- a/public/basty/src/main/scala/nl/lumc/sasc/biopet/pipelines/basty/BastyTrait.scala +++ b/public/basty/src/main/scala/nl/lumc/sasc/biopet/pipelines/basty/BastyTrait.scala @@ -179,7 +179,7 @@ trait BastyTrait extends MultiSampleQScript { snpsOnly: Boolean = false): FastaOutput = { val bastyGenerateFasta = new BastyGenerateFasta(this) bastyGenerateFasta.outputName = if (outputName != null) outputName else sampleName - bastyGenerateFasta.inputVcf = shiva.variantcalling.get.finalFile + bastyGenerateFasta.inputVcf = shiva.variantCalling.get.finalFile if (shiva.samples.contains(sampleName)) { bastyGenerateFasta.bamFile = shiva.samples(sampleName).preProcessBam.get } diff --git a/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaSvCalling.scala b/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaSvCalling.scala index 8bf0abaca..c23586638 100644 --- a/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaSvCalling.scala +++ b/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaSvCalling.scala @@ -44,7 +44,7 @@ class ShivaSvCalling(val root: Configurable) extends QScript with SummaryQScript protected var inputBams: Map[String, File] = Map() - protected def addBamFile(file: File, sampleId: Option[String] = None): Unit = { + def addBamFile(file: File, sampleId: Option[String] = None): Unit = { sampleId match { case Some(sample) => inputBams += sample -> file case _ if !file.exists() => throw new IllegalArgumentException("Bam file does not exits: " + file) diff --git a/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaTrait.scala b/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaTrait.scala index d742df034..f0a51e582 100644 --- a/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaTrait.scala +++ b/public/shiva/src/main/scala/nl/lumc/sasc/biopet/pipelines/shiva/ShivaTrait.scala @@ -270,13 +270,19 @@ trait ShivaTrait extends MultiSampleQScript with SummaryQScript with Reference { } } - lazy val variantcalling = if (config("multisample_variantcalling", default = true).asBoolean) { + lazy val variantCalling = if (config("multisample_variantcalling", default = true).asBoolean) { Some(makeVariantcalling(multisample = true)) } else None + lazy val svCalling = if (config("sv_calling", default = false).asBoolean) { + val svCalling = new ShivaSvCalling(this) + samples.foreach(x => x._2.preProcessBam.foreach(bam => svCalling.addBamFile(bam, Some(x._1)))) + Some(svCalling) + } else None + /** This will add the mutisample variantcalling */ def addMultiSampleJobs(): Unit = { - variantcalling.foreach(vc => { + variantCalling.foreach(vc => { vc.outputDir = new File(outputDir, "variantcalling") vc.inputBams = samples.flatMap(_._2.preProcessBam).toList vc.init() -- GitLab