view tools/ncbi_blast_plus/ncbi_dustmasker_wrapper.xml @ 23:9e483194ebf6 draft

planemo upload for repository https://github.com/peterjc/galaxy_blast/tree/master/tools/ncbi_blast_plus commit befaf16290a437209109c06c20d0deb170925d16-dirty
author peterjc
date Fri, 15 Sep 2017 07:52:22 -0400
parents 771b554bc85d
children 13aa389f4eeb
line wrap: on
line source

<tool id="ncbi_dustmasker_wrapper" name="NCBI BLAST+ dustmasker" version="@WRAPPER_VERSION@">
    <!-- dustmasker wrapper from Edward Kirton and Nicola Soranzo -->
    <description>masks low complexity regions</description>
    <macros>
        <token name="@BINARY@">dustmasker</token>
        <import>ncbi_macros.xml</import>
    </macros>
    <expand macro="preamble" />
    <command detect_errors="aggressive">
## The command is a Cheetah template which allows some Python based syntax.
## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
dustmasker
#if $db_opts.db_opts_selector == "db":
  -in '${db_opts.database.fields.path}' -infmt blastdb
#elif $db_opts.db_opts_selector == "histdb":
  -in '${os.path.join($db_opts.histdb.files_path, "blastdb")}' -infmt blastdb
#else:
  -in '$subject' -infmt fasta
#end if
-out '$outfile'
-window $window -level $level -linker $linker -outfmt $outformat
    </command>
    <inputs>
        <expand macro="input_conditional_nucleotide_db" />
        <param argument="-window" type="integer" value="64" label="DUST window length" />
        <param argument="-level" type="integer" value="20" label="DUST level" help="Score threshold for subwindows" />
        <param argument="-linker" type="integer" value="1" label="DUST linker" help="How close masked intervals should be to get merged together" />
        <param name="outformat" argument="-outfmt" type="select" label="Output format">
            <!-- seqloc_* formats are not very useful
                 and what BLAST+ calls 'interval' is not what Galaxy calls interval format
            -->
            <option value="fasta">FASTA</option>
            <option value="maskinfo_asn1_bin">maskinfo ASN.1 binary</option>
            <option value="maskinfo_asn1_text" selected="true">maskinfo ASN.1 text</option>
            <option value="maskinfo_xml">maskinfo_xml</option>
        </param>
    </inputs>
    <outputs>
        <data name="outfile" format="maskinfo-asn1" label="DUST Masked File">
            <change_format>
                <when input="outformat" value="fasta" format="fasta" />
                <when input="outformat" value="maskinfo_asn1_bin" format="maskinfo-asn1-binary" />
                <!--
                <when input="outformat" value="maskinfo_asn1_text" format="maskinfo-asn1" />
                -->
                <when input="outformat" value="maskinfo_xml" format="xml" />
            </change_format>
        </data>
    </outputs>
    <tests>
        <test>
            <param name="db_opts_selector" value="file" />
            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
            <param name="window" value="64" />
            <param name="level" value="20" />
            <param name="linker" value="1" />
            <param name="outformat" value="fasta" />
            <output name="outfile" file="dustmasker_three_human.fasta" />
        </test>
        <test>
            <param name="db_opts_selector" value="file" />
            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
            <param name="window" value="64" />
            <param name="level" value="20" />
            <param name="linker" value="1" />
            <param name="outformat" value="maskinfo_asn1_bin" />
            <output name="outfile" file="dustmasker_three_human.maskinfo-asn1-binary" />
        </test>
        <test>
            <param name="db_opts_selector" value="file" />
            <param name="subject" value="three_human_mRNA.fasta" ftype="fasta" />
            <param name="window" value="64" />
            <param name="level" value="20" />
            <param name="linker" value="1" />
            <param name="outformat" value="maskinfo_asn1_text" />
            <output name="outfile" file="dustmasker_three_human.maskinfo-asn1" />
        </test>
    </tests>
    <help>
**What it does**

This tool identifies and masks out low complexity regions of a nucleotide database (or sequences in FASTA format) by using the symmetric DUST_ algorithm.

If you select *maskinfo ASN.1* (binary or text) as output format, the output file can be used as masking data for NCBI BLAST+ makeblastdb tool.

More information about dustmasker can be found in the `BLAST Command Line Applications User Manual`_.

.. _BLAST Command Line Applications User Manual: https://www.ncbi.nlm.nih.gov/books/NBK279690/
.. _DUST: http://www.ncbi.nlm.nih.gov/pubmed/16796549

**References**

If you use this Galaxy tool in work leading to a scientific publication please
cite the following papers:

@REFERENCES@
    </help>
    <expand macro="blast_citations" />
</tool>