name: "gatk4_preprocessintervals"
description: Prepares bins for coverage collection.
keywords:
  - gatk4
  - preprocessintervals
  - interval
  - bed
tools:
  - "gatk4":
      description:
        Developed in the Data Sciences Platform at the Broad Institute, the toolkit offers a wide variety of tools
        with a primary focus on variant discovery and genotyping. Its powerful processing engine
        and high-performance computing features make it capable of taking on projects of any size.
      homepage: https://gatk.broadinstitute.org/hc/en-us
      documentation: https://gatk.broadinstitute.org/hc/en-us/categories/360002369672s
      doi: "10.1158/1538-7445.AM2017-3590"
      licence: ["Apache-2.0"]

input:
  - meta:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - fasta:
      type: file
      description: The reference fasta file
      pattern: "*.fasta"
  - meta2:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - fai:
      type: file
      description: Index of reference fasta file
      pattern: "*.fasta.fai"
  - meta3:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - dict:
      type: file
      description: GATK sequence dictionary
      pattern: "*.dict"
  - meta4:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - intervals:
      type: file
      description: Interval file (bed or interval_list) with the genomic regions to be included from the analysis (optional)
      pattern: "*.{bed,interval_list}"
  - meta5:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - exclude_intervals:
      type: file
      description: Interval file (bed or interval_list) with the genomic regions to be excluded from the analysis (optional)
      pattern: "*.{bed,interval_list}"

output:
  - meta:
      type: map
      description: |
        Groovy Map containing reference information
        e.g. [ id:'test' ]
  - versions:
      type: file
      description: File containing software versions
      pattern: "versions.yml"
  - interval_list:
      type: file
      description: Processed interval list file
      pattern: "*.{bed,interval_list}"

authors:
  - "@ryanjameskennedy"
  - "@ViktorHy"
  - "@ramprasadn"
