view hicBuildMatrix.xml @ 0:9767c021cd58 draft

planemo upload for repository https://github.com/maxplanck-ie/HiCExplorer/tree/master/galaxy/wrapper/ commit 2f347b0756d720114f037ed1ff9ba4836e1b3b04
author bgruening
date Thu, 30 Mar 2017 02:30:47 -0400
parents
children eb0d14cdf8b8
line wrap: on
line source

<tool id="hicexplorer_hicbuildmatrix" name="@BINARY@" version="@WRAPPER_VERSION@.0">
    <description>creates a matrix of interactions</description>
    <macros>
        <token name="@BINARY@">hicBuildMatrix</token>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" >
        <requirement type="package" version="1.3.1">samtools</requirement>
    </expand>
    <command>
<![CDATA[

        mkdir ./QCfolder &&
        mkdir $qc.files_path
        &&

        hicBuildMatrix

            --samFiles
            #for $repeat in $samFiles:
                '${repeat.samFile}'
            #end for

            #if $binSize:
                --binSize $binSize
            #end if

            #if $restrictionCutFile:
                --restrictionCutFile '$restrictionCutFile'
            #end if

            #if $minDistance:
                --minDistance $minDistance
            #end if

            #if $maxDistance:
                --maxDistance $maxDistance
            #end if

            #if $restrictionSequence:
                --restrictionSequence '$restrictionSequence'
            #end if

            #if $region:
                --region '$region'
            #end if

            --outFileName ./matrix.h5
            --outBam ./unsorted.bam

            #if $restrictionCutFile:
                --restrictionCutFile '$restrictionCutFile'
            #end if

            $removeSelfCircles

            #if $minMappingQuality and $minMappingQuality is not None:
                --minMappingQuality $minMappingQuality
            #end if

            --QCfolder ./QCfolder
        &&
        mv ./QCfolder/* $qc.files_path/
        &&
        mv $qc.files_path/hicQC.html $qc
        &&
        samtools sort ./unsorted.bam -o sorted.bam

]]>
    </command>
    <inputs>
        <repeat max="2" min="2" name="samFiles" title="Sam/Bam files to process">
            <param name="samFile" type="data" format="sam,bam"/>
        </repeat>

        <param argument="--restrictionCutFile" type="data" format="bed" optional="True"
            help="BED file with all restriction cut places. Should contain only mappable restriction sites. If given, the
                  bins are set to match the restriction fragments (i.e. the region between one restriction site and the next)"/>

        <param name="binSize" type="integer" value="" optional="true" label="Bin size in bp"
            help="If used, the restriction cut places (if given) are used to only consider reads that are in the vicinity of the resctriction sites.
            Otherwise all reads in the interval are considered. " argument="--binSize"/>
        
        <param name="restrictionCutFile" type="data" format="bed" optional="true" label="BED file with all restriction cut places"
            help="Should contaion only  mappable restriction sites. If given, the bins are set to match the restriction fragments
            (i.e. the region between one restriction site and the next)." argument="--restrictionCutFile"/>

        <param name="minDistance" type="integer" value="" optional="true" label="Minimum distance between restriction sites"
            help="Restriction sites that are closer that this distance are merged into one.
            This option only applies if --restrictionCutFile is given." argument="--minDistance"/>

        <param name="maxDistance" type="integer" value="" optional="true" label="Maximum distance in bp from restriction site to read, to consider a read a valid one"
            help="This option only applies if --restrictionCutFile is given."  argument="--maxDistance"/>

        <param name="restrictionSequence" type="text" optional="true" label="Sequence of the restriction site"
            help="This is used to discard reads that end/start with such sequence and that are considered un-ligated fragments or
            &quot;dangling-ends&quot;. If not given, such statistics will not be available." argument="--restrictionSequence"/>

        <expand macro="region" />

        <param argument="--removeSelfCircles" type="boolean" truevalue="--removeSelfCircles" falsevalue=""
            label="Save the matrix of values underlying the heatmap" help="If set, outward facing reads, at a distance of less thatn 25kbs are removed." />

        <expand macro="minMappingQuality" />

    </inputs>
    <outputs>
        <data name="outBam" from_work_dir="sorted.bam" format="bam" label="${tool.name} BAM file on ${on_string}"/>
        <data name="outFileName" from_work_dir="matrix.h5" format="h5" label="${tool.name} MATRIX on ${on_string}"/>
        <data name="qc" format="html" label="${tool.name} QC"/>
    </outputs>
    <tests>
        <test>
            <repeat name="samFiles">
                <param name="samFile" value="small_test_R1_unsorted.bam" ftype="sam" />
            </repeat>
            <repeat name="samFiles">
                <param name="samFile" value="small_test_R2_unsorted.bam" ftype="sam"/>
            </repeat>
            <param name="binSize" value="5000"/>
            <output name="outBam" file="hicBuildMatrix_result1.bam" ftype="bam"/>
            <output name="outFileName" file="hicBuildMatrix_result1.h5" ftype="h5" compare="sim_size"/>
        </test>
    </tests>
    <help><![CDATA[

**What it does**

Creates a matrix of interactions.

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