view takeabreak.xml @ 1:a018b8f663ea draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/colibread commit 7e976e65d4630ce8b485efd1d50a168ba98276e6
author iuc
date Fri, 24 Nov 2017 12:49:52 -0500
parents e1fdaacdabc3
children b0e311ac462c
line wrap: on
line source

<?xml version='1.0' encoding='utf-8'?>
<tool profile="16.0" id="takeabreak" name="TakeABreak" version="1.1.2">
    <description>is a tool that can detect inversion breakpoints directly from raw NGS reads</description>
    <requirements>
        <requirement type="package" version="1.1.2">takeabreak</requirement>
    </requirements>
    <macros>
        <import>macros.xml</import>
    </macros>
    <command><![CDATA[

        ## if single reads
        #if str( $input_type_option.input_type ) == "simple"
            #for $input in $input_type_option.reads
                #if $input
                    #set $filename = os.path.basename(str($input)) + "." + $input.ext
                    ln -sf '${input}' '${filename}' &&
                    echo "${filename}" >> input.fof &&
                #end if
            #end for
        #else
            ## if paired reads in a list
            #for $i, $list in enumerate( $input_type_option.reads_lists )
                #for $read in $list.list_reads
                    #set $filename = os.path.basename(str($read)) + "." + $read.ext
                    ln -sf '${read}' '${filename}' &&
                    echo "${filename}" >> "indiv_${i}.fof" &&
                #end for
                echo "indiv_${i}.fof" >> input.fof &&
            #end for
        #end if

        TakeABreak

        -in input.fof
        -kmer-size ${kmer_size}
        -abundance-min '${abundance_min}'
        -abundance-max ${abundance_max}
        -solidity-kind ${solidity_kind}
        -lct ${lct}
        -max-sim ${max_sim}
        -repeat ${repeat}

    ]]></command>

    <inputs>
        <!-- Input data files -->
        <conditional name="input_type_option">
            <param name="input_type" type="select" label="Input option">
                <option value="simple">one individual = one read </option>
                <option value="list">one individual = several reads</option>
            </param>
            <when value="simple">
                <param name='reads' argument="-in" format="fasta,fastq" type="data" multiple="true" label="Single read files" optional="True" />
            </when>
            <when value="list">
                <repeat name="reads_lists" title="Individual" min="1">
                    <param name='list_reads' argument="-in" format="fasta,fastq" type="data_collection" collection_type="list" multiple="true" label="Individual read files list"/>
                </repeat>
            </when>
        </conditional>
        <param name="kmer_size" argument="-kmer-size" type="integer" label="Length of the k-mers" value="31" help="Set the length of used kmers" />
        <param name="abundance_min" argument="-abundance-min" type="text" label="Minimal abundance threshold" value="auto" />
        <param name="abundance_max" argument="-abundance-max" type="integer" label="Maximal abundance threshold" value="2147483647" />

        <param name="solidity_kind" argument="-solidity-kind" type="select" label="Way to consider a solid kmer with several input datasets" >
            <option value="one">One</option>
            <option value="sum">Sum</option>
            <option value="all">All</option>
        </param>

        <param argument="-lct" type="integer" label="local complexity threshold" value="100" help="Local complexity threshold" />
        <param name="max_sim" argument="-max-sim" type="integer" label="max similarity percentage" value="80" help="Inversions with a and b' (or u and v') whose longest common subsequence size is bigger than k*(this value)/100 are discarded" />
        <param argument="-repeat" type="integer" label="maximal repeat size" value="8" help="Maximal repeat size at the breakpoint. Longest common suffix between a and b" />
    </inputs>

    <outputs>
        <data format="fasta" name="inversion" from_work_dir="TakeABreak_*.fasta" label="Inversions with ${tool.name} on ${on_string}"/>
    </outputs>
    <tests>
        <test>
            <conditional name="input_type_option">
                <param name="input_type" value="list" />
                <repeat name="reads_lists">
                    <param name="list_reads">
                        <collection type="list">
                            <element name="example_reads" value="takeabreak/toy_example_reads.fasta" ftype="fasta"/>
                            <element name="example_reads_with_inv" value="takeabreak/toy_example_with_inv_reads.fasta" ftype="fasta"/>
                        </collection>
                    </param>
                </repeat>
            </conditional>
            <output name="inversion" file="takeabreak/inversion_list.fasta"/>
        </test>
        <test>
            <conditional name="input_type_option">
                <param name="input_type" value="simple" />
                <param name="reads" value="takeabreak/toy_example_reads.fasta,takeabreak/toy_example_with_inv_reads.fasta" />
            </conditional>
            <output name="inversion" file="takeabreak/inversion.fasta"/>
        </test>
    </tests>
    <help><![CDATA[

**Description**

TakeABreak is a tool that can detect inversion breakpoints directly from raw NGS reads, without the need of any reference genome and without de novo assembling the genomes. Its implementation has a very limited memory impact allowing its usage on common desktop computers and acceptable runtime (Illumina reads simulated at 2x40x coverage from human chromosome 22 can be treated in less than two hours, with less than 1GB of memory).

-------

**Web site**

http://colibread.inria.fr/takeabreak/


    ]]></help>
    <expand macro="citations">
        <citation type="doi">10.1007/978-3-319-07953-0_10</citation>
    </expand>

    </tool>