Skip to content
Snippets Groups Projects
Commit 11f01f92 authored by Peter van 't Hof's avatar Peter van 't Hof
Browse files

Review changes to kraken

parent 182492a4
No related branches found
No related tags found
No related merge requests found
...@@ -28,6 +28,15 @@ class Kraken(val root: Configurable) extends BiopetCommandLineFunction { ...@@ -28,6 +28,15 @@ class Kraken(val root: Configurable) extends BiopetCommandLineFunction {
@Input(doc = "Input: FastQ or FastA") @Input(doc = "Input: FastQ or FastA")
var input: List[File] = _ var input: List[File] = _
@Output(doc = "Unidentified reads", required = false)
var unclassified_out: Option[File] = None
@Output(doc = "Identified reads", required = false)
var classified_out: Option[File] = None
@Output(doc = "Output with hits per sequence")
var output: File = _
var db: File = config("db") var db: File = config("db")
var inputFastQ: Boolean = true var inputFastQ: Boolean = true
...@@ -36,55 +45,37 @@ class Kraken(val root: Configurable) extends BiopetCommandLineFunction { ...@@ -36,55 +45,37 @@ class Kraken(val root: Configurable) extends BiopetCommandLineFunction {
var compressionBzip: Boolean = false var compressionBzip: Boolean = false
var quick: Boolean = false var quick: Boolean = false
var min_hits: Option[Int] = config("min_hits") var minHits: Option[Int] = config("min_hits")
@Output(doc = "Unidentified reads", required = false)
var unclassified_out: Option[File] = None
@Output(doc = "Identified reads", required = false)
var classified_out: Option[File] = None
@Output(doc = "Output with hits per sequence") var preLoad: Boolean = config("preload", default = true)
var output: File = _
var preload: Boolean = config("preload", default = true)
var paired: Boolean = config("paired", default = false) var paired: Boolean = config("paired", default = false)
executable = config("exe", default = "kraken") executable = config("exe", default = "kraken")
override def versionRegex = """Kraken version ([\d\w\-\.]+)\n.*""".r override def versionRegex = """Kraken version ([\d\w\-\.]+)\n.*""".r
override def versionExitcode = List(0, 1) override def versionExitcode = List(0, 1)
override def versionCommand = executable + " --version"
override def defaultCoreMemory = 8.0 override def defaultCoreMemory = 8.0
override def defaultThreads = 4 override def defaultThreads = 4
override def versionCommand = executable + " --version"
/** Sets readgroup when not set yet */ /** Sets readgroup when not set yet */
override def beforeGraph(): Unit = { override def beforeGraph(): Unit = {
super.beforeGraph() super.beforeGraph()
//FIXME: This does not do anything
} }
/** Returns command to execute */ /** Returns command to execute */
def cmdLine = { def cmdLine = required(executable) +
var cmd: String = required(executable) + "--db" + required(db) +
"--db" + required(db) + optional("--threads", nCoresRequest) +
optional("--threads", nCoresRequest) + conditional(inputFastQ, "--fastq-input") +
conditional(inputFastQ, "--fastq-input") + conditional(!inputFastQ, "--fasta-input") +
conditional(!inputFastQ, "--fasta-input") + conditional(quick, "--quick") +
conditional(quick, "--quick") optional("--min_hits", minHits) +
optional("--unclassified-out ", unclassified_out.get) +
min_hits match { optional("--classified-out ", classified_out.get) +
case Some(v) => cmd += "--min_hits " + v "--output" + required(output) +
case _ => cmd += "" conditional(preLoad, "--preload") +
} conditional(paired, "--paired") +
repeat(input)
cmd += optional("--unclassified-out ", unclassified_out.get) +
optional("--classified-out ", classified_out.get) +
"--output" + required(output) +
conditional(preload, "--preload") +
conditional(paired, "--paired")
// finally the input files (R1 [R2])
cmd += input.mkString(" ")
cmd
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment