<tool name="CollectBaseDistributionByCycle" id="picard_CollectBaseDistributionByCycle" version="@TOOL_VERSION@.@WRAPPER_VERSION@">
  <description>charts the nucleotide distribution per cycle in a SAM or BAM dataset</description>
  <macros>
    <import>picard_macros.xml</import>
    <token name="@WRAPPER_VERSION@">1</token>
  </macros>
  <expand macro="requirements">
    <requirement type="package" version="3.4.1">r-base</requirement>
  </expand>
  <command detect_errors="exit_code"><![CDATA[
    @java_options@
    @symlink_element_identifier@
    ##set up input files

    #set $reference_fasta_filename = "localref.fa"

    @handle_reference_source@

    picard
    CollectBaseDistributionByCycle
    INPUT='$escaped_element_identifier'
    OUTPUT="${outFile}"
    CHART_OUTPUT="${pdfFile}"
    ALIGNED_READS_ONLY="${aligned_reads_only}"
    PF_READS_ONLY="${pf_reads_only}"
    REFERENCE_SEQUENCE="${reference_fasta_filename}"
    ASSUME_SORTED="${assume_sorted}"

    VALIDATION_STRINGENCY="${validation_stringency}"
    QUIET=true
    VERBOSITY=ERROR
    @TMPDIR_OPTION@

  ]]></command>
  <inputs>
    <param format="sam,bam" name="inputFile" type="data" label="Select SAM/BAM dataset or dataset collection" help="If empty, upload or import a SAM/BAM dataset."/>
    <conditional name="reference_source">
      <param name="reference_source_selector" type="select" label="Load reference genome from">
        <option value="cached">Local cache</option>
        <option value="history">History</option>
      </param>
      <when value="cached">
        <param name="ref_file" type="select" label="Using reference genome" help="REFERENCE_SEQUENCE">
          <options from_data_table="all_fasta">
          </options>
          <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
        </param>
      </when>
      <when value="history">
        <param name="ref_file" type="data" format="fasta" label="Use the folloing dataset as the reference sequence" help="REFERENCE_SEQUENCE; You can upload a FASTA sequence to the history and use it as reference" />
      </when>
    </conditional>
    <param name="aligned_reads_only" type="boolean" label="Calculate the base distribution over aligned reads only" checked="true" truevalue="true" falsevalue="false" help="ALIGNED_READS_ONLY"/>
    <param name="pf_reads_only" type="boolean" label="Calculate the base distribution over PF (passing filtering) reads only" checked="true" truevalue="true" falsevalue="false" help="PF_READS_ONLY"/>
    <param name="assume_sorted" type="boolean" label="Assume the input file is already sorted" checked="true" truevalue="true" falsevalue="false" help="ASSUME_SORTED"/>

    <expand macro="VS" />

  </inputs>

  <outputs>
    <data format="tabular" name="outFile"/>
    <data format="pdf" name="pdfFile"/>
  </outputs>

  <tests>
    <test>
      <param name="aligned_reads_only" value="true" />
      <param name="pf_reads_only" value="true" />
      <param name="assume_sorted" value="true" />
      <param name="reference_source_selector" value="history" />
      <param name="ref_file" value="picard_CollectBaseDistributionByCycle_ref.fa" />
      <param name="inputFile" value="picard_CollectBaseDistributionByCycle.bam" ftype="bam" />
      <output name="outFile" file="picard_CollectBaseDistributionByCycle_test1.tab" ftype="tabular" lines_diff="4"/>
    </test>
  </tests>


  <help>

.. class:: infomark

**Purpose**

Program to chart the nucleotide distribution per cycle in a SAM or BAM file.

@dataset_collections@

@description@

  ALIGNED_READS_ONLY=Boolean    If set to true, calculate the base distribution over aligned reads only.  Default value:
                                false. This option can be set to 'null' to clear the default value. Possible values:
                                {true, false}

  PF_READS_ONLY=Boolean         If set to true calculate the base distribution over PF reads only.  Default value: false.
                                This option can be set to 'null' to clear the default value. Possible values: {true,
                                false}

  REFERENCE_SEQUENCE=File
  R=File                        Reference sequence fasta  Default value: null.

  ASSUME_SORTED=Boolean
  AS=Boolean                    If true (default), then the sort order in the header file will be ignored.  Default

@more_info@

  </help>
  <expand macro="citations" />
</tool>
