annotate sambamba_filter.xml @ 0:668e187566d5

uploaded xml wrapper
author lomereiter
date Mon, 13 Aug 2012 02:13:09 -0400
parents
children 806b3253c996
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
1 <tool id="sambamba_filter" name="Filter BAM or SAM" version="0.2.3">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
2 <requirements>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
3 <requirement type="binary">sambamba</requirement>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
4 </requirements>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
5 <description>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
6 on flags, fields, and tags
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
7 </description>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
8 <command>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
9 #if $query != None:
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
10 #set $query = $query.replace('__sq__', '\'')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
11 #set $query = $query.replace('__ob__', '[')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
12 #set $query = $query.replace('__cb__', ']')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
13 #set $query = $query.replace('__dq__', '"')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
14 #set $query = $query.replace('__oc__', '{')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
15 #set $query = $query.replace('__cc__', '}')
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
16 #set $query = $query.replace('__gt__', chr(62))
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
17 #set $query = $query.replace('__lt__', chr(60))
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
18 #end if
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
19 #if $outputformat.format == 'bam':
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
20 #set $header = ''
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
21 #else
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
22 #set $header = $outputformat.header
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
23 #end if
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
24 #if isinstance($input.datatype, $__app__.datatypes_registry.get_datatype_by_extension('bam').__class__):
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
25 #set $input1 = 'input.bam'
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
26 ln -s $input $input1 &amp;&amp;
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
27 ln -s $input.metadata.bam_index input.bai &amp;&amp;
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
28 sambamba view --filter="$query" -f $outputformat.format -o $outfile $input1 $header $region
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
29 #else
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
30 sambamba view -S --filter="$query" -f $outputformat.format -o $outfile $input $header
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
31 #end if
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
32 </command>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
33 <inputs>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
34 <param name="input" type="data" format="bam,sam" label="BAM or SAM file to filter"/>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
35 <param name="query" type="text" size="80">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
36 <label>Filter expression</label>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
37 <help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
38 The syntax is described at sambamba wiki: https://github.com/lomereiter/sambamba/wiki/%5Bsambamba-view%5D-Filter-expression-syntax
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
39 </help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
40 </param>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
41
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
42 <conditional name="outputformat">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
43 <param name="format" type="select">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
44 <label>Output format</label>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
45 <option value="sam">SAM</option>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
46 <option value="bam">BAM</option>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
47 </param>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
48 <when value="sam">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
49 <param name="header" type="select">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
50 <label>Include SAM header in output</label>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
51 <option value="-h">Yes</option>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
52 <option value="">No</option>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
53 </param>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
54 </when>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
55 <when value="bam"/>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
56 </conditional>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
57 <param name="region" type="text" size="40" label="Region in format chr:beg-end, works for BAM input only">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
58 <help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
59 The syntax is the same as in samtools, start and end coordinates are 1-based.
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
60 </help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
61 </param>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
62 </inputs>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
63 <outputs>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
64 <data name="outfile" format="bam">
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
65 <change_format>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
66 <when input="outputformat.format" value="sam" format="sam"/>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
67 </change_format>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
68 </data>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
69 </outputs>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
70 <help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
71 **What it does**
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
72
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
73 This tool uses sambamba view to filter BAM/SAM on flags, fields, tags, and region.
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
74 In order to install sambamba, visit its website_ and either download
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
75 a Debian package for your architecture, or build the tool from source.
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
76
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
77 Input is SAM or BAM file, output is chosen by user.
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
78
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
79 **Note**
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
80
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
81 Filtering by region works only for coordinate-sorted BAM files. For SAM files this parameter is just ignored.
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
82
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
83 -----
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
84
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
85 .. _website: http://github.com/lomereiter/sambamba
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
86
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
87
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
88 </help>
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
89 <!-- TODO: tests -->
668e187566d5 uploaded xml wrapper
lomereiter
parents:
diff changeset
90 </tool>