From 046d7d2b00b98d93cdb8639072593aa0adb2ab08 Mon Sep 17 00:00:00 2001 From: Peter van 't Hof <p.j.van_t_hof@lumc.nl> Date: Sat, 1 Aug 2015 15:04:46 +0200 Subject: [PATCH] Adding exac annotation step --- .../sasc/biopet/pipelines/toucan/Toucan.scala | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala b/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala index f7fe32091..8774bdc98 100644 --- a/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala +++ b/public/toucan/src/main/scala/nl/lumc/sasc/biopet/pipelines/toucan/Toucan.scala @@ -56,17 +56,36 @@ class Toucan(val root: Configurable) extends QScript with BiopetQScript with Sum normalizer.outputVcf = swapExt(outputDir, vep.output, ".vcf", ".normalized.vcf.gz") add(normalizer) + // Optional annotation steps, depend is some files existing in the config val gonlVcfFile: Option[File] = config("gonl_vcf") + val exacVcfFile: Option[File] = config("exac_vcf") + + var outputFile = normalizer.outputVcf + gonlVcfFile match { case Some(gonlVcfFile) => { val vcfWithVcf = new VcfWithVcf(this) - vcfWithVcf.input = normalizer.outputVcf + vcfWithVcf.input = outputFile vcfWithVcf.secondaryVcf = gonlVcfFile vcfWithVcf.output = swapExt(outputDir, normalizer.outputVcf, ".vcf.gz", ".gonl.vcf.gz") vcfWithVcf.fields ::= ("AF", "AF_gonl", None) add(vcfWithVcf) + outputFile = vcfWithVcf.output + } + case _ => + } + + exacVcfFile match { + case Some(exacVcfFile) => { + val vcfWithVcf = new VcfWithVcf(this) + vcfWithVcf.input = outputFile + vcfWithVcf.secondaryVcf = exacVcfFile + vcfWithVcf.output = swapExt(outputDir, outputFile, ".vcf.gz", ".exac.vcf.gz") + vcfWithVcf.fields ::= ("MAF", "MAF_exac", None) + add(vcfWithVcf) + outputFile = vcfWithVcf.output } - case _ => normalizer.outputVcf + case _ => } } -- GitLab