diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/MarkDuplicates.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/MarkDuplicates.scala index 0b4169ab138e87135640213e8c3bf224c04ce357..bb9575e1a2dcfb3a3403af7d23e8c0e8bab6be0e 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/MarkDuplicates.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/MarkDuplicates.scala @@ -52,6 +52,14 @@ class MarkDuplicates(val root: Configurable) extends Picard { @Argument(doc = "OPTICAL_DUPLICATE_PIXEL_DISTANCE", required = false) var opticalDuplicatePixelDistance: Option[Int] = config("opticalDuplicatePixelDistance") + @Output(doc = "Bam Index", required = true) + private var outputIndex: File = _ + + override def afterGraph { + super.afterGraph + if (createIndex) outputIndex = new File(output.getAbsolutePath.stripSuffix(".bam") + ".bai") + } + override def commandLine = super.commandLine + repeat("INPUT=", input, spaceSeparated = false) + required("OUTPUT=", output, spaceSeparated = false) + diff --git a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortSam.scala b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortSam.scala index 119d411e7e946e0764921e6d07bf1d5af81c4b6c..82f1fac3d6f53e586e19285aded171a5c7a9b31a 100644 --- a/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortSam.scala +++ b/biopet-framework/src/main/scala/nl/lumc/sasc/biopet/extensions/picard/SortSam.scala @@ -16,6 +16,14 @@ class SortSam(val root: Configurable) extends Picard { @Argument(doc = "Sort order of output file Required. Possible values: {unsorted, queryname, coordinate} ", required = true) var sortOrder: String = _ + @Output(doc = "Bam Index", required = true) + private var outputIndex: File = _ + + override def afterGraph { + super.afterGraph + if (createIndex) outputIndex = new File(output.getAbsolutePath.stripSuffix(".bam") + ".bai") + } + override def commandLine = super.commandLine + required("INPUT=", input, spaceSeparated = false) + required("OUTPUT=", output, spaceSeparated = false) +