import "./tasks/mendelian.wdl" as mendelian import "./tasks/sister.wdl" as sister import "./tasks/merge.wdl" as merge workflow {{ project_name }} { File inputSamplesFile Array[Array[File]] inputSamples = read_tsv(inputSamplesFile) File sdf String cluster_config String disk_size scatter (sample in inputSamples){ call mendelian.mendelian as mendelian { input: mother_vcf_gz=sample[0], father_vcf_gz=sample[1], child_vcf_gz=sample[2], mother_vcf_idx=sample[4], father_vcf_idx=sample[5], child_vcf_idx=sample[6], mother_name=sample[8], father_name=sample[9], child_name=sample[10], family_name=sample[11], sdf=sdf, cluster_config=cluster_config, disk_size=disk_size } call sister.sister as sister { input: violation_vcf_gz=mendelian.violation_vcf_gz, violation_vcf_idx=mendelian.violation_vcf_idx, consistent_vcf_gz=mendelian.consistent_vcf_gz, consistent_vcf_idx=mendelian.consistent_vcf_idx, sister_vcf_gz=sample[3], sister_vcf_idx=sample[7], sdf=sdf, family_name=sample[11], cluster_config=cluster_config, disk_size=disk_size } } call merge.merge as merge { input: child_violation_sister=sister.child_violation_sister, child_violation_sister_idx=sister.child_violation_sister_idx, child_violation_nonsister=sister.child_violation_nonsister, child_violation_nonsister_idx=sister.child_violation_nonsister_idx, child_consistent_sister=sister.child_consistent_sister, child_consistent_sister_idx=sister.child_consistent_sister_idx, child_consistent_nonsister=sister.child_consistent_nonsister, child_consistent_nonsister_idx=sister.child_consistent_nonsister_idx, cluster_config=cluster_config, disk_size=disk_size } }