Small script to do full variant annotation in parallel

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@5853 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
fromer 2011-05-23 20:33:20 +00:00
parent 5dca1e4d2e
commit 833dff658a
1 changed files with 53 additions and 0 deletions

View File

@ -0,0 +1,53 @@
package oneoffs.fromer
import org.broadinstitute.sting.queue.extensions.gatk._
import org.broadinstitute.sting.queue.QScript
import org.broadinstitute.sting.utils.interval.IntervalSetRule
class ScatteredFullVariantAnnotator extends QScript {
qscript =>
@Argument(doc = "gatk jar file", shortName = "J", required = true)
var gatkJarFile: File = _
@Argument(shortName = "R", doc = "ref", required = true)
var referenceFile: File = _
@Argument(shortName = "L", doc = "Intervals", required = false)
var intervals: String = _
@Input(doc = "level of parallelism. By default is set to 0 [no scattering].", shortName = "scatter", required = false)
var scatterCount = 0
@Input(doc = "bam input, as .bam or as a list of files", shortName = "I", required = true)
var bams: File = _
@Input(doc = "variant calls to annotate", fullName = "variantVCF", shortName = "C", required = true)
var variantVCF: File = _
@Output(doc = "annotated file to output", shortName = "o", required = true)
var outputAnnotated: File = _
def script = {
add(new ScatteredFullVariantAnnotator())
}
trait CommandLineGATKArgs extends CommandLineGATK {
this.intervalsString = List(qscript.intervals)
this.jarFile = qscript.gatkJarFile
this.reference_sequence = qscript.referenceFile
this.input_file = List(qscript.bams)
this.logging_level = "INFO"
this.rodToIntervalTrackName = "variant"
this.BTI_merge_rule = IntervalSetRule.INTERSECTION
}
class ScatteredFullVariantAnnotator() extends org.broadinstitute.sting.queue.extensions.gatk.VariantAnnotator with CommandLineGATKArgs {
this.scatterCount = qscript.scatterCount
this.variantVCF = qscript.variantVCF
this.useAllAnnotations = true
this.out = qscript.outputAnnotated
}
}