Newer
Older
Boolean? casava
Boolean? nano
Boolean? noFilter
Boolean? extract = true
Boolean? nogroup
Int? minLength
String? format
Int? threads = 1
File? contaminants
File? adapters
File? limits
Int? kmers
String? dir
command {
set -e -o pipefail
${true="--casava" false="" casava} \
${true="--nano" false="" nano} \
${true="--nofilter" false="" noFilter} \
${true="--extract" false="" extract} \
${true="--nogroup" false="" nogroup} \
${"--min_length " + minLength } \
${"--format " + format} \
${"--threads " + threads} \
${"--contaminants " + contaminants} \
${"--adapters " + adapters} \
${"--limits " + limits} \
${"--kmers " + kmers} \
${"--dir " + dir} \
${seqFile}
File rawReport = select_first(glob(outdirPath + "/*/fastqc_data.txt"))
File htmlReport = select_first(glob(outdirPath + "/*/fastqc_report.html"))
File summary = select_first(glob(outdirPath + "/*/summary.txt"))
Array[File] images = glob(outdirPath + "/*/Images/*.png")
task extractAdapters {
File extractAdaptersFastqcJar
File inputFile
String outputDir
String? adapterOutputFilePath = outputDir + "/adapter.list"
String? contamsOutputFilePath = outputDir + "/contaminations.list"
Boolean? skipContams
File? knownContamFile
File? knownAdapterFile
Float? adapterCutoff
Boolean? outputAsFasta
command {
java -Xmx4G -jar ${extractAdaptersFastqcJar} \
--inputFile ${inputFile} \
${"--adapterOutputFile " + adapterOutputFilePath } \
${"--contamsOutputFile " + contamsOutputFilePath } \
${"--knownContamFile " + knownContamFile} \
${"--knownAdapterFile " + knownAdapterFile} \
${"--adapterCutoff " + adapterCutoff} \
${true="--skipContams" false="" skipContams} \
${true="--outputAsFasta" false="" outputAsFasta}
}
output {
File adapterOutputFile = select_first([adapterOutputFilePath])
File contamsOutputFile = select_first([contamsOutputFilePath])
Array[String] adapterList = read_lines(select_first([adapterOutputFilePath]))
Array[String] contamsList = read_lines(select_first([contamsOutputFilePath]))
}
task getConfiguration {
String? preCommand
String? fastqcDirFile = "fastqcDir.txt"
command {
set -e -o pipefail
${preCommand}
echo $(dirname $(readlink -f $(which fastqc))) > ${fastqcDirFile}
}
output {
String fastqcDir = read_string(fastqcDirFile)
File adapterList = fastqcDir + "/Configuration/adapter_list.txt"
File contaminantList = fastqcDir + "/Configuration/contaminant_list.txt"
File limits = fastqcDir + "/Configuration/limits.txt"
}