diff picard_MergeSam.xml @ 6:b4f78b7ad8b1 draft

Uploaded
author devteam
date Tue, 28 Jan 2014 15:13:42 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/picard_MergeSam.xml	Tue Jan 28 15:13:42 2014 -0500
@@ -0,0 +1,72 @@
+<tool id="picard_mergesam" name="Merge SAM or BAM files" version="1.106.0">
+    <!-- Documentation: http://picard.sourceforge.net/command-line-overview.shtml#MergeSamFiles
+Merges multiple SAM/BAM files into one file.
+-->
+  <description>merges SAM or BAM files together</description>
+  <requirements><requirement type="package" version="1.106.0">picard</requirement></requirements>
+  <command interpreter="bash">
+    mergesam_wrapper.sh $output1 $outformat I=$input1 I=$input2 
+      #for $i in $inputs
+        I=${i.input}
+      #end for 
+      MSD=$mergeSD VALIDATION_STRINGENCY=LENIENT TMP_DIR=$__new_file_path__
+          2&gt; $outlog
+    ##|| echo "Error running Picard MergeSamFiles" >&amp;2
+  </command>
+  <inputs>
+    <param name="title" label="Name for the output merged bam file" type="text" default="Merged.bam"
+       help="This name will appear in your history so use it to remember what the new file in your history contains" />
+    <param name="outformat" type="select" label="Output format" >
+      <option value="bam" selected="True">BAM</option>
+      <option value="sam">SAM</option>
+    </param>
+    <param name="mergeSD" value="true" type="boolean"  label="Merge all component bam file headers into the merged bam file"
+      truevalue="true" falsevalue="false" checked="yes" 
+      help="Control the MERGE_SEQUENCE_DICTIONARIES flag for Picard MergeSamFiles. Default (true) correctly propagates read groups and other important metadata" />
+    <param name="input1" label="First file" type="data" format="bam,sam" />
+    <param name="input2" label="with file" type="data" format="bam,sam" help="Need to add more files? Use controls below." />
+    <repeat name="inputs" title="Input Files">
+      <param name="input" label="Add file" type="data" format="bam,sam" />
+    </repeat>
+  </inputs>
+  <outputs>
+    <data format="bam" name="output1" label="${title}.${outformat}" >
+       <change_format>
+           <when input="outformat" value="sam" format="sam" />
+       </change_format>
+    </data>
+    <data format="txt" name="outlog" label="${title}_${tool.name}.log" />
+  </outputs>
+  <tests>
+    <!-- TODO: add ability to test framework to test without at least 
+         one repeat element value
+    -->
+    <test>
+      <param name="title" value="test1" />
+      <param name="mergeSD" value="true" />
+      <param name="input1" value="sam_merge_in1.bam" ftype="bam" /> 
+      <param name="input2" value="sam_merge_in2.bam" ftype="bam" />
+      <output name="output1" file="sam_merge_out1.bam" ftype="bam" />
+      <output name="outlog" file="sam_merge_out1.log" ftype="txt" lines_diff="11"/>
+    </test>
+    <test>
+      <param name="title" value="test2" />
+      <param name="mergeSD" value="true" />
+      <param name="input1" value="sam_merge_in1.bam" ftype="bam" /> 
+      <param name="input2" value="sam_merge_in2.bam" ftype="bam" />
+      <param name="input" value="sam_merge_in3.bam" ftype="bam" />
+      <output name="output1" file="sam_merge_out2.bam" ftype="bam" />
+      <output name="outlog" file="sam_merge_out2.log" ftype="txt" lines_diff="11"/>
+    </test>
+  </tests>
+  <help>
+
+**What it does**
+
+This tool uses the Picard_ merge command to merge any number of BAM files together into one BAM file while preserving the BAM
+metadata such as read groups
+
+.. _Picard: http://picard.sourceforge.net/command-line-overview.shtml#MergeSamFiles
+
+  </help>
+</tool>