view screen.seqs.xml @ 1:0e2e03dbdaf9 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/mothur commit 721531d2e9fd1e208a3fba8cfbe5dcd572599ca2
author iuc
date Tue, 05 Sep 2017 17:08:52 -0400
parents 125a6ae65887
children 8743aecd26a9
line wrap: on
line source

<tool profile="16.07" id="mothur_screen_seqs" name="Screen.seqs" version="@WRAPPER_VERSION@.0">
    <description>Screen sequences</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="stdio"/>
    <expand macro="version_command"/>
    <command><![CDATA[
        @SHELL_OPTIONS@

        ## create symlinks to input datasets
        ln -s "$fasta_in" fasta_in.dat &&
        ln -s "$names_in" names_in.dat &&
        ln -s "$groups_in" groups_in.dat &&
        ln -s "$qfile_in" qfile_in.dat &&
        ln -s "$count_in" count_in.dat &&
        ln -s "$alignreport_in" alignreport_in.dat &&
        ln -s "$taxonomy_in" taxonomy_in.dat &&
        ln -s "$summary" summary.dat &&
        ln -s "$contigsreport" contigsreport.dat &&

        echo 'screen.seqs(
            fasta=fasta_in.dat
            #if int($start) > -1:
                ,start=$start
            #end if
            #if int($end) > -1:
                ,end=$end
            #end if
            #if int($minlength) > -1:
                ,minlength=$minlength
            #end if
            #if int($maxlength) > -1:
                ,maxlength=$maxlength
            #end if
            #if int($maxambig) > -1:
                ,maxambig=$maxambig
            #end if
            #if int($maxhomop) > -1:
                ,maxhomop=$maxhomop
            #end if
            #if int($criteria) > -1:
                ,criteria=$criteria
            #end if
            #if $optimize:
                ,optimize=$optimize
            #end if
            #if $qfile_in:
                ,qfile=qfile_in.dat
            #end if
            #if $names_in:
                ,name=names_in.dat
            #end if
            #if $groups_in:
                ,group=groups_in.dat
            #end if
            #if $alignreport_in:
                ,alignreport=alignreport_in.dat
            #end if
            #if $taxonomy_in:
                ,taxonomy=taxonomy_in.dat
            #end if
            #if $count_in:
                ,count=count_in.dat
            #end if
            #if $summary:
                ,summary=summary.dat
            #end if
            #if $contigsreport:
                ,contigsreport=contigsreport.dat
            #end if
            ,processors='"\${GALAXY_SLOTS:-8}"'
        )'
        | sed 's/ //g'  ## mothur trips over whitespace
        | mothur
        | tee mothur.out.log
    ]]></command>
    <inputs>
        <param name="fasta_in" type="data" format="fasta,mothur.align" label="fasta - Fasta to screen"/>
        <param name="start" type="integer" value="-1" label="start - Remove sequences that start after position (ignored when negative)"/>
        <param name="end" type="integer" value="-1" label="end - Remove sequences that end before position (ignored when negative)"/>
        <param name="minlength" type="integer" value="-1" label="minlength - Remove sequences shorter than (ignored when negative)"/>
        <param name="maxlength" type="integer" value="-1" label="maxlength - Remove sequences longer than (ignored when negative)"/>
        <param name="maxambig" type="integer" value="-1" label="maxambig - Remove sequences with ambiguous bases greater than (ignored when negative)"/>
        <param name="maxhomop" type="integer" value="-1" label="maxhomop - Remove sequences with homopolymers greater than (ignored when negative)"/>
        <param name="criteria" type="integer" value="-1" label="criteria - Percent of sequences that an optimize value must match to be retained(ignored when negative)"/>
        <param name="optimize" type="select" multiple="true" display="checkboxes" label="optimize - Optimize selected paramenters">
            <option value="start">start</option>
            <option value="end">end</option>
            <option value="minlength">minlength</option>
            <option value="maxlength">maxlength</option>
            <option value="maxambig">maxambig</option>
            <option value="maxhomop">maxhomop</option>
        </param>
        <param name="qfile_in" type="data" format="qual" optional="true" label="qfile - Sequence Quality file to screen"/>
        <param name="names_in" type="data" format="mothur.names" optional="true" label="name - Sequence Names to screen"/>
        <param name="groups_in" type="data" format="mothur.groups" optional="true" label="group - Groups to screen"/>
        <param name="alignreport_in" type="data" format="mothur.align.report" optional="true" label="alignreport - Align Report to screen"/>
        <param name="summary" type="data" format="mothur.summary" optional="true" label="summary file - as created by summary.seqs" help="saves processing time when screening with parameters in the summary file"/>
        <param name="contigsreport" type="data" format="contigs.report" optional="true" label="contigsreport - Contigs Report to screen with" help="this file is created by the make.contigs command. If you provide the contigs report file you can screen your sequences using the following parameters: minoverlap, ostart, oend and mismatches"/>
        <param name="taxonomy_in" type="data" format="taxonomy" optional="true" label="taxonomy - Taxonomy to screen"/>
        <param name="count_in" type="data" format="mothur.count_table" optional="true" label="count - a count_table" help="generated by count.seqs"/>
    </inputs>
    <outputs>
        <expand macro="logfile-output"/>
        <data name="fasta_out" format_source="fasta_in" from_work_dir="fasta_in*.good.dat" label="${tool.name} on ${on_string}: good.${fasta_in.datatype.file_ext}"/>
        <data name="bad_accnos" format="mothur.accnos" from_work_dir="fasta_in*.bad.accnos" label="${tool.name} on ${on_string}: bad.accnos"/>
        <data name="qfile_out" format_source="qfile_in" from_work_dir="qfile_in*.good.dat" label="${tool.name} on ${on_string}: qfile">
            <filter>qfile_in</filter>
        </data>
        <data name="names_out" format="mothur.names" from_work_dir="names_in*.good.dat" label="${tool.name} on ${on_string}: names">
            <filter>names_in</filter>
        </data>
        <data name="groups_out" format="mothur.groups" from_work_dir="groups_in*.good.dat" label="${tool.name} on ${on_string}: groups">
            <filter>groups_in</filter>
        </data>
        <data name="alignreport_out" format="mothur.align.report" from_work_dir="alignreport_in*.good.dat" label="${tool.name} on ${on_string}: align.report">
            <filter>alignreport_in</filter>
        </data>
        <data name="count_out" format="mothur.count_table" from_work_dir="count_in*.good.dat" label="${tool.name} on ${on_string}: count">
            <filter>count_in</filter>
        </data>
    </outputs>
    <tests>
        <test>
            <param name="fasta_in" value="Mock_S280_L001_R1_001_small.trim.contigs.fasta" ftype="fasta"/>
            <param name="maxambig" value="0"/>
            <param name="maxlength" value="275"/>
            <output name="fasta_out" file="Mock_S280_L001_R1_001_small.trim.contigs.good.fasta" ftype="fasta"/>
            <output name="bad_accnos" file="Mock_S280_L001_R1_001_small.trim.contigs.bad.accnos" ftype="mothur.accnos"/>
            <expand macro="logfile-test"/>
        </test>
        <test>
            <param name="fasta_in" value="amazon.fasta" ftype="mothur.align"/>
            <param name="count_in" value="amazon.count_table"/>
            <param name="maxambig" value="0"/>
            <param name="maxlength" value="275"/>
            <output name="fasta_out" md5="d41d8cd98f00b204e9800998ecf8427e" ftype="mothur.align"/>
            <output name="count_out" md5="5f4a08bbf3ec12f954edbcc6b2a2feee" ftype="mothur.count_table"/>
            <output name="bad_accnos" md5="66acde5349e34fc97be22032ce68eea5" ftype="mothur.accnos"/>
            <expand macro="logfile-test"/>
        </test>
    </tests>
    <help>
<![CDATA[

@MOTHUR_OVERVIEW@

**Command Documentation**

The screen.seqs_ command enables you to keep sequences that fulfill certain user defined criteria. Furthermore, it enables you to cull those sequences not meeting the criteria from a name_, group_, or align.report_ file.

.. _name: https://www.mothur.org/wiki/Name_file
.. _group: https://www.mothur.org/wiki/Group_file
.. _align.report: https://www.mothur.org/wiki/Align.seqs
.. _screen.seqs: https://www.mothur.org/wiki/Screen.seqs

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