view picard_ReorderSam.xml @ 33:3f254c5ced1d draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/picard commit 9ecbbb878d68a980ba35a90865e524c723ca3ed8
author iuc
date Sun, 03 Mar 2024 16:06:11 +0000
parents f9242e01365a
children
line wrap: on
line source

<tool name="ReorderSam" id="picard_ReorderSam" version="@TOOL_VERSION@.@WRAPPER_VERSION@" profile="@PROFILE@">
    <description>reorder reads to match ordering in reference sequences</description>
    <macros>
        <import>picard_macros.xml</import>
        <token name="@WRAPPER_VERSION@">0</token>
    </macros>
    <xrefs>
        <xref type="bio.tools">picard_reordersam</xref>
    </xrefs>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
    @java_options@
    @symlink_element_identifier@
    #set $picard_dict = "localref.dict"
    #set $ref_fasta = "localref.fa"     ## This is done because picards "likes" .fa extension

    ln -sf '${reference_source.ref_file}' '${ref_fasta}' &&

    #if str( $reference_source.reference_source_selector ) == "history":

      picard CreateSequenceDictionary
      --REFERENCE '${ref_fasta}'
      --OUTPUT '${picard_dict}'
      --QUIET true
      --VERBOSITY ERROR

      &&

    #else:

      #set $ref_fasta = str( $reference_source.ref_file.fields.path )

    #end if

    picard
    ReorderSam
      --INPUT '$escaped_element_identifier'
      --OUTPUT '${outFile}'
      --SEQUENCE_DICTIONARY '${ref_fasta}'
      --ALLOW_INCOMPLETE_DICT_CONCORDANCE '${allow_incomplete_dict_concordance}'
      --ALLOW_CONTIG_LENGTH_DISCORDANCE '${allow_contig_length_discordance}'

      --VALIDATION_STRINGENCY '${validation_stringency}'
      --QUIET true
      --VERBOSITY ERROR

  ]]></command>
    <inputs>
        <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="Use dictionary from the list" help="Select genome from the list">
                    <options from_data_table="picard_indexes">
                        <filter type="sort_by" column="2"/>
                        <validator type="no_options" message="No indexes are available"/>
                    </options>
                    <validator type="no_options" message="A built-in dictionary 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,bam,sam" label="Use the following dataset to create dictionary" help="You can upload sequences to the history from which Picard will automatically generate dictionary using CreateSequenceDictionary command"/>
            </when>
        </conditional>
        <param name="inputFile" type="data" format="sam,bam" label="Select SAM/BAM dataset or dataset collection" help="If empty, upload or import a SAM/BAM dataset"/>
        <param name="allow_incomplete_dict_concordance" type="boolean" label="If true, then allows only a partial overlap of the BAM contigs with the new reference sequence contigs" help="ALLOW_INCOMPLETE_DICT_CONCORDANCE; By default, this tool requires a corresponding contig in the new reference for each read contig; default=False"/>
        <param name="allow_contig_length_discordance" type="boolean" label="If true, then permits mapping from a read contig to a new reference contig with the same name but a different length" help="ALLOW_CONTIG_LENGTH_DISCORDANCE; HIGHLY DANGEROUS! Only use if you know what you are doing; default=False"/>
        <expand macro="VS"/>
    </inputs>
    <outputs>
        <data name="outFile" format="bam" label="${tool.name} on ${on_string}: Reordered BAM"/>
    </outputs>
    <tests>
        <test>
            <param name="reference_source_selector" value="history"/>
            <param name="ref_file" value="picard_ReorderSam_ref.fa" ftype="fasta"/>
            <param name="inputFile" value="picard_ReorderSam.bam" ftype="bam"/>
            <param name="allow_incomplete_dict_concordance" value="false"/>
            <param name="allow_contig_length_discordance" value="false"/>
            <output name="outFile" file="picard_ReorderSam_test1.bam" ftype="bam" lines_diff="4"/>
        </test>
    </tests>
    <help>

.. class:: infomark

**Purpose**

ReorderSam reorders reads in a SAM/BAM file to match the contig ordering in a provided reference file, as determined by exact name matching of contigs.  Reads mapped to contigs absent in the new reference are dropped.

@dataset_collections@

----

.. class:: warningmark

Not to be confused with **SortSam**.

@description@

  ALLOW_INCOMPLETE_DICT_CONCORDANCE=Boolean
  S=Boolean                     If true, then allows only a partial overlap of the BAM contigs with the new reference
                                sequence contigs.  By default, this tool requires a corresponding contig in the new
                                reference for each read contig  Default value: false. Possible values: {true, false}

  ALLOW_CONTIG_LENGTH_DISCORDANCE=Boolean
  U=Boolean                     If true, then permits mapping from a read contig to a new reference contig with the same
                                name but a different length.  Highly dangerous, only use if you know what you are doing.
                                Default value: false.  Possible values: {true, false}

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