import "./tasks/mapping.wdl" as mapping import "./tasks/Metrics.wdl" as Metrics import "./tasks/Dedup.wdl" as Dedup import "./tasks/deduped_Metrics.wdl" as deduped_Metrics import "./tasks/BQSR.wdl" as BQSR import "./tasks/Haplotyper.wdl" as Haplotyper import "./tasks/TNseq.wdl" as TNseq import "./tasks/bcftools.wdl" as bcftools import "./tasks/ANNOVAR.wdl" as ANNOVAR import "./tasks/Manta.wdl" as Manta import "./tasks/AnnotSV.wdl" as AnnotSV import "./tasks/CNVkit.wdl" as CNVkit import "./tasks/MSIsensor.wdl" as MSIsensor import "./tasks/HRD.wdl" as HRD import "./tasks/TMB.wdl" as TMB import "./tasks/fastqc.wdl" as fastqc import "./tasks/fastqscreen.wdl" as fastqscreen import "./tasks/qualimap.wdl" as qualimap import "./tasks/TNscope.wdl" as TNscope import "./tasks/somatic.wdl" as somatic import "./tasks/processSomatic.wdl" as processSomatic import "./tasks/somaticFilter.wdl" as somaticFilter workflow {{ project_name }} { String sample_id File? tumor_bam File? tumor_bam_index File? normal_bam File? normal_bam_index String? duplex_umi String? read_structure String SENTIEON_LICENSE String sentieon_docker String manta_docker String bcftools_docker String annovar_docker String annotsv_docker String cnvkit_docker String sequenza_docker String msisensor_docker String tmb_docker String platform File ref_dir String fasta File dbmills_dir String db_mills File dbsnp_dir String dbsnp File germline_resource File germline_resource_tbi File annovar_database File annotsv_database File gc File baseline File ref_flat File? regions Int? interval_padding String disk_size String cluster_2cpu_4gb String cluster_16cpu_32gb Boolean qc String fastqc_docker String fastqscreen_docker String qualimap_docker File screen_ref_dir File fastq_screen_conf Boolean multi_caller String varscan_docker call TNseq.TNseq as TNseq { input: SENTIEON_LICENSE=SENTIEON_LICENSE, sample=sample_id, normal_bam=normal_bam, normal_bam_index=normal_bam_index, tumor_bam=tumor_bam, tumor_bam_index=tumor_bam_index, normal_name=sample_id + ".N", tumor_name=sample_id + ".T", fasta=fasta, ref_dir=ref_dir, regions=regions, interval_padding=interval_padding, germline_resource=germline_resource, germline_resource_tbi=germline_resource_tbi, docker=sentieon_docker, cluster_config=cluster_16cpu_32gb, disk_size=disk_size } call bcftools.bcftools as TNseq_bcftools { input: vcf=TNseq.vcf, fasta=fasta, ref_dir=ref_dir, docker=bcftools_docker, cluster_config=cluster_2cpu_4gb, disk_size=disk_size } call ANNOVAR.ANNOVAR as TNseq_ANNOVAR { input: vcf=TNseq_bcftools.norm_vcf, annovar_database=annovar_database, docker=annovar_docker, cluster_config=cluster_16cpu_32gb, disk_size=disk_size } if (multi_caller){ call somatic.somatic as somatic { input: sample=sample_id, normal_bam=normal_bam, normal_bam_index=normal_bam_index, tumor_bam=tumor_bam, tumor_bam_index=tumor_bam_index, ref_dir=ref_dir, fasta=fasta, docker=varscan_docker, disk_size=disk_size, cluster_config=cluster_16cpu_32gb } call processSomatic.processSomatic as processSomatic { input: sample=sample_id, varscan_snp=somatic.varscan_snp, varscan_indel=somatic.varscan_indel, docker=varscan_docker, disk_size=disk_size, cluster_config=cluster_16cpu_32gb } call somaticFilter.somaticFilter as somaticFilter { input: sample=sample_id, varscan_snp_somatic_hc=processSomatic.varscan_snp_somatic_hc, varscan_snp_germline_hc=processSomatic.varscan_snp_germline_hc, varscan_snp_loh_hc=processSomatic.varscan_snp_loh_hc, varscan_indel_somatic_hc=processSomatic.varscan_indel_somatic_hc, varscan_indel_germline_hc=processSomatic.varscan_indel_germline_hc, varscan_indel_loh_hc=processSomatic.varscan_indel_loh_hc, varscan_indel=somatic.varscan_indel, docker=varscan_docker, disk_size=disk_size, cluster_config=cluster_16cpu_32gb } call bcftools.bcftools as VarScan_bcftools { input: vcf=somaticFilter.varscan_somatic_filter, fasta=fasta, ref_dir=ref_dir, docker=bcftools_docker, cluster_config=cluster_2cpu_4gb, disk_size=disk_size } call ANNOVAR.ANNOVAR as VarScan_ANNOVAR { input: vcf=VarScan_bcftools.norm_vcf, annovar_database=annovar_database, docker=annovar_docker, cluster_config=cluster_16cpu_32gb, disk_size=disk_size } call TNscope.TNscope as TNscope { input: SENTIEON_LICENSE=SENTIEON_LICENSE, sample=sample_id, normal_recaled_bam=normal_bam, normal_recaled_bam_index=normal_bam_index, tumor_recaled_bam=tumor_bam, tumor_recaled_bam_index=tumor_bam_index, normal_name=sample_id + ".N", tumor_name=sample_id + ".T", fasta=fasta, ref_dir=ref_dir, regions=regions, interval_padding=interval_padding, dbsnp=dbsnp, dbsnp_dir=dbsnp_dir, docker=sentieon_docker, cluster_config=cluster_16cpu_32gb, disk_size=disk_size } call bcftools.bcftools as TNscope_bcftools { input: vcf=TNscope.TNscope_vcf, fasta=fasta, ref_dir=ref_dir, docker=bcftools_docker, cluster_config=cluster_2cpu_4gb, disk_size=disk_size } call ANNOVAR.ANNOVAR as TNscope_ANNOVAR { input: vcf=TNscope_bcftools.norm_vcf, annovar_database=annovar_database, docker=annovar_docker, cluster_config=cluster_16cpu_32gb, disk_size=disk_size } } }