annotate samtools_slice_bam.xml @ 2:ea6104c707da draft

planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
author devteam
date Tue, 13 Oct 2015 12:55:46 -0400
parents e0a8a7f4da76
children 22a1a2406fe9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
1 <tool id="samtools_slice_bam" name="Slice" version="2.0">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
2 <description>BAM by genomic regions</description>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
3 <macros>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
4 <import>macros.xml</import>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
5 </macros>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
6 <!-- <code file="samtools_slice_options.py"/> -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
7 <expand macro="requirements"></expand>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
8 <expand macro="stdio"></expand>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
9 <expand macro="version_command"></expand>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
10 <command>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
11 <![CDATA[
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
12 ln -s "${input_bam}" temp_input.bam &&
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
13 ln -s "${input_bam.metadata.bam_index}" temp_input.bam.bai &&
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
14
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
15 #if str($slice_method.slice_method_selector) == "bed":
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
16
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
17 samtools view -@ \${GALAXY_SLOTS:-1} -b -L "${input_interval}" -o unsorted_output.bam temp_input.bam &&
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
18
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
19 #elif str($slice_method.slice_method_selector) == "chr":
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
20
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
21 samtools view -@ \${GALAXY_SLOTS:-1} -b -o unsorted_output.bam temp_input.bam
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
22 ${ ' '.join( map( lambda x:'"%s"' % ( x ), str( $slice_method.refs ).split(",") ) ) } &&
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
23
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
24 #elif str($slice_method.slice_method_selector) == "man":
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
25
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
26 samtools view -@ \${GALAXY_SLOTS:-1} -b -o unsorted_output.bam temp_input.bam
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
27
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
28 #for $region in $slice_method.regions:
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
29 "${region.chrom}:${region.start}-${region.end}"
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
30 #end for
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
31
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
32 &&
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
33
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
34 #end if
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
35
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
36 samtools sort -O bam -T sorted -@ \${GALAXY_SLOTS:-1} -o "${output_bam}" unsorted_output.bam
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
37 ]]>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
38 </command>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
39 <inputs>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
40 <param name="input_bam" format="bam" label="Select BAM dataset to slice" type="data" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
41 <conditional name="slice_method">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
42 <param name="slice_method_selector" type="select" label="How do you want to slice your dataset?">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
43 <option value="bed">using a list of intervals from a BED dataset</option>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
44 <option value="chr">by chromosomes/contigs present in the BAM dataset</option>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
45 <option value="man">by chromosomes/contigs and coordinates</option>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
46 </param>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
47 <when value="bed">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
48 <param format="bed" label="BED file" name="input_interval" type="data" help="BED datasets can be obtained using &quot;Get Data -> UCSC Main&quot; datasource."/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
49 </when>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
50 <when value="chr">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
51 <param name="refs" type="select" optional="False" multiple="True" label="Select references (chromosomes and contigs) you would like to restrict bam to" help="Click and type in the box above to see options. You can select multiple entries. If &quot;No options available&quot; is displayed, you need to re-detect metadata on the input dataset. See help section below.">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
52
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
53 <!-- The options tagset below extracts reference names from bam file metadata -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
54 <!-- This will not work with bed files with old style metadata. However this -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
55 <!-- Can be easily fixed by re-deceting metadata on a bam dataset by clicking -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
56 <!-- The pencil icon and settind datatype to "bam" -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
57 <!-- This change has been commited in the following pull request: -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
58 <!-- https://github.com/galaxyproject/galaxy/pull/107 -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
59
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
60 <options>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
61 <filter type="data_meta" ref="input_bam" key="reference_names" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
62 </options>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
63 </param>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
64 </when>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
65 <when value="man">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
66 <repeat name="regions" title="Regions" min="1">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
67 <param name="chrom" type="select" optional="False" label="Select references (chromosomes and contigs) you would like to restrict bam to" help="Select chromosome/contig from the list. If &quot;No options available&quot; is displayed, you need to re-detect metadata on the input dataset. See help section below.">
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
68
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
69 <!-- See comments above -->
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
70
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
71 <options>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
72 <filter type="data_meta" ref="input_bam" key="reference_names" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
73 </options>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
74 </param>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
75 <param name="start" type="integer" min="1" value="0" label="Enter START coordinate (1-based)"/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
76 <param name="end" type="integer" min="1" value="100" label="Enter END coordinate"/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
77 </repeat>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
78
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
79
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
80 </when>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
81 </conditional>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
82
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
83 </inputs>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
84 <outputs>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
85 <data format="bam" name="output_bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
86 </outputs>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
87 <tests>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
88 <test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
89 <param ftype="bam" name="input_bam" value="bam-slice-input.bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
90 <param name="slice_method_selector" value="bed"/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
91 <param ftype="bed" name="input_interval" value="bam-slice.bed" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
92 <output file="bam-slice-test1.bam" ftype="bam" name="output_bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
93 </test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
94 <test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
95 <param ftype="bam" name="input_bam" value="bam-slice-input.bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
96 <param name="slice_method_selector" value="chr"/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
97 <param name="refs" value="chrM" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
98 <output file="bam-slice-test2.bam" ftype="bam" name="output_bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
99 </test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
100 <test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
101 <param ftype="bam" name="input_bam" value="bam-slice-input.bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
102 <param name="slice_method_selector" value="man"/>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
103 <param name="chrom" value="chrM" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
104 <param name="start" value="1" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
105 <param name="end" value="1000" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
106 <output file="bam-slice-test3.bam" ftype="bam" name="output_bam" />
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
107 </test>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
108 </tests>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
109 <help>
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
110 <![CDATA[
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
111
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
112 **What it does**
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
113
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
114 Allows to restrict (slice) input BAM dataset to a list of intervals defined in a BED file, individual chromosomes, or manually set list of coordinates. BED datasets can be obtained from **Get Data -> UCSC Main**.
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
115
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
116 This tool is based on ``samtools view`` command.
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
117
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
118 @no-chrom-options@
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
119
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
120 ]]>
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
121 </help>
2
ea6104c707da planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
devteam
parents: 1
diff changeset
122 <expand macro="citations"></expand>
0
8f9af81f2cfe Uploaded tool tarball.
devteam
parents:
diff changeset
123 </tool>