diff msconvert.xml @ 7:e638f7fad66a draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/msconvert commit d595e3cfe190a61d81005f9be7c2652aa5f91292
author galaxyp
date Sat, 23 Feb 2019 06:21:27 -0500
parents 6b6bba73eadb
children 06747cba5685
line wrap: on
line diff
--- a/msconvert.xml	Tue Mar 14 16:52:39 2017 -0400
+++ b/msconvert.xml	Sat Feb 23 06:21:27 2019 -0500
@@ -1,395 +1,22 @@
-<tool id="msconvert" name="msconvert" version="0.3.0">
-  <!-- BEGIN_VERSION_DEFAULT -->
-  <description>Convert and filter a mass spec peak list</description>
-  <!-- END_VERSION_DEFAULT -->
-  <!--
+<tool id="msconvert" name="msconvert" version="@VERSION@.0">
+  <description>Convert and/or filter mass spectrometry files</description>
+  <macros>
+      <import>msconvert_macros.xml</import>
+  </macros>
   <requirements>
-    <requirement type="package" version="3_0_4388">proteowizard</requirement>
+      <container type="docker">chambm/pwiz-skyline-i-agree-to-the-vendor-licenses:@FULL_VERSION@</container>
   </requirements>
--->
-  <command interpreter="python">
-    #import re
-    #set $ext = $input.ext
-    msconvert_wrapper.py
-    #if $type.input_type == 'wiff':
-      #set basename = 'absciex'
-      #if hasattr($input, 'display_name')
-        #set basename = $re.sub('\W','_',$input.display_name)
-      #end if
-      --input=${input.extra_files_path}/wiff
-      --input_name='${basename}.wiff
-      --implicit=${input.extra_files_path}/wiff_scan
-      --input=${input.extra_files_path}/wiff_scan
-      --input_name='${basename}.wiff.scan
-    #else
-      --input=${input}
-      #if hasattr($input, 'display_name')
-      --input_name='${input.display_name}'
-      #end if
-    #end if
-    --output=${output}
-    ## BEGIN_VERSION_DEFAULT
-    --fromextension=$ext
-    ## END_VERSION_DEFAULT
-
-
-    --toextension=${output_type}
-
-    #if $settings.settingsType == "full"
-    --binaryencoding=${settings.binary_encoding}
-    --mzencoding=${settings.mz_encoding}
-    --intensityencoding=${settings.intensity_encoding}
-    --zlib=${settings.zlib}
-    #end if
-
-    #if $filtering.filtering_use
-
-    #if $filtering.precursor_recalculation.value
-    --filter "precursorRecalculation"
-    #end if
-
-    #if $filtering.peak_picking.pick_peaks
-    --filter "peakPicking $filtering.peak_picking.prefer_vendor_peaks $filtering.peak_picking.ms_levels"
-    #end if
-
-    #if str($filtering.activation) != "false"
-    --filter "activation $filtering.activation"
-    #end if
-
-    #if len($filtering.indices) > 0
-    --filter "index
-    #for $index in $filtering.indices
-    [${index.from},${index.to}]
-    #end for
-    "
-    #end if
-
-    #if len($filtering.scan_numbers) > 0
-    --filter "scanNumber
-    #for $scan_number in $filtering.scan_numbers
-    [${scan_number.from},${scan_number.to}]
-    #end for
-    "
-    #end if
-
-    #for threshold_entry in $filtering.threshold_repeat
-    --filter "threshold $threshold_entry.threshold.threshold_type $threshold_entry.threshold.value $threshold_entry.orientation"
-    #end for
-
-
-    #if $filtering.strip_it.value
-    --filter "stripIT"
-    #end if
-
-    #if $filtering.filter_mz_windows.do_filter
-    --filter "mzWindow [$filtering.filter_mz_windows.from,$filtering.filter_mz_windows.to]"
-    #end if
-
-
-    #if $filtering.filter_ms_levels.do_filter
-    --filter "msLevel [$filtering.filter_ms_levels.from, $filtering.filter_ms_levels.to]"
-    #end if
-
-    #if str($filtering.etd_filtering.do_etd_filtering) == "default"
-    --filter "ETDFilter"
-    #end if
-
-    #if str($filtering.etd_filtering.do_etd_filtering) == "advanced"
-    --filter "ETDFilter removePrecursor:$filtering.etd_filtering.remove_precursor removeChargeReduced:$filtering.etd_filtering.remove_charge_reduced  removeNeutralLoss:$filtering.etd_filtering.remove_neutral_loss  blanketRemoval:$filtering.etd_filtering.blanket_removal  MatchingTolerance:$filtering.etd_filtering.matching_tolerance $filtering.etd_filtering.matching_tolerance_units"
-    #end if
-
-    ## BEGIN_VERSION_3
-
-    #if $filtering.precursor_refine.value
-    --filter "precursorRefine"
-    #end if
-
-    #if $filtering.ms2denoise.denoise
-    --filter "MS2Denoise $filtering.ms2denoise.num_peaks $filtering.ms2denoise.window_width $filtering.ms2denoise.relax"
-    #end if
-
-    #if str($filtering.ms2deisotope) == "true"
-    --filter "MS2Deisotope"
-    #end if
-
-    #if str($filtering.polarity) != "false"
-    --filter "polarity $filtering.polarity"
-    #end if
-
-    #if str($filtering.analyzer) != "false"
-    --filter "analyzer $filtering.analyzer"
-    #end if
-
-    ## END_VERSION_3
-
-    #end if
-
-  </command>
-
-  <inputs>
-
-    <!-- BEGIN_VERSION_DEFAULT -->
-    <conditional name="type">
-      <param name="input_type" type="select" label="Input Type">
-        <option value="mzml">mzML</option>
-        <option value="mzxml">mzXML</option>
-        <option value="mgf">mgf</option>
-        <option value="ms2">ms2</option>
-        <option value="wiff">wiff</option>
-      </param>
-      <when value="mzml">
-        <param format="mzml" name="input" type="data" label="Input mzML"/>
-      </when>
-      <when value="mzxml">
-        <param format="mzxml" name="input" type="data" label="Input mzXML"/>
-      </when>
-      <when value="mgf">
-        <param format="mgf" name="input" type="data" label="Input mgf"/>
-      </when>
-      <when value="ms2">
-        <param format="ms2" name="input" type="data" label="Input ms2"/>
-      </when>
-      <when value="wiff">
-        <param format="wiff" name="input" type="data" label="Input wiff"/>
-      </when>
-    </conditional>
-    <!-- END_VERSION_DEFAULT -->
-    <param name="output_type" type="select" label="Output Type">
-      <option value="mzML">mzML (indexed)</option>
-      <option value="unindexed_mzML">mzML (unindexed)</option>
-      <option value="mzXML">mzXML (indexed)</option>
-      <option value="unindexed_mzXML">mzXML (unindexed)</option>
-      <option value="mgf">mgf</option>
-      <option value="ms2">ms2</option>
-    </param>
-    <conditional name="filtering">
-      <param name="filtering_use" type="boolean" label="Use Filtering?" truevalue="true" falsevalue="false" />
-      <when value="false" />
-      <when value="true">
-        <param type="boolean" name="precursor_recalculation" label="Recalculate Precursor?" />
-        <!-- BEGIN_VERSION_3 -->
-        <param type="boolean" name="precursor_refine" label="Refine Precursor?" />
-        <!-- END_VERSION_3 -->
-
-
-        <conditional name="peak_picking">
-          <param type="boolean" name="pick_peaks" label="Use Peak Picking?" truevalue="true" falsevalue="false" />
-          <when value="false" />
-          <when value="true">
-            <param name="ms_levels" type="select" label="Peak Peaking - Apply to MS Levels">
-              <option value="1">MS1 Only (1)</option>
-              <option value="2">MS2 Only (2)</option>
-              <option value="2-">MS2 and on (2-)</option>
-              <option value="1-">All Levels (1-)</option>
-            </param>
-            <param type="boolean" name="prefer_vendor_peaks" label="Peak Picking - Prefer Vendor Peaks?" truevalue="true" falsevalue="false" checked="true"/>
-          </when>
-        </conditional>
-
-        <repeat name="threshold_repeat" title="Filter by Threshold">
-          <conditional name="threshold">
-            <param type="select" label="Specify threshold on" name="threshold_type" help="">
-              <option value="count">Peak count</option>
-              <option value="count-after-ties">Peak count (after ties)</option>
-              <option value="absolute">Peak absolute intensity</option><!-- TODO: absolute what? m/z -->
-              <option value="bpi-relative">Percent of base peak intensity</option>
-              <option value="tic-relative">Percent of total ion current</option>
-              <option value="tic-fraction">Aggregate percent of total ion current</option>
-            </param>
-            <when value="count">
-              <param type="integer" name="value" label="Number of peaks to keep" value="100" />
-            </when>
-            <when value="count-after-ties">
-              <param type="integer" name="value" label="Number of peaks to keep (after ties)" value="100" />
-            </when>
-            <when value="absolute">
-              <param type="float" name="value" label="Absolute intensity cut-off" value="100.0" />
-            </when>
-            <when value="bpi-relative">
-              <param type="float" name="value" label="Keep peaks above (or below) this fraction of base peak intensity" value="0.2"
-              />
-            </when>
-            <when value="tic-relative">
-              <param type="float" name="value" label="Keep peaks above (or below) this fraction of total ion current" value="0.2"
-              />
-            </when>
-            <when value="tic-fraction">
-              <param type="float" name="value" label="Keep peaks until this fraction of total ion current is accounted for" value="0.8" />
-            </when>
-          </conditional>
-          <param type="select" label="Keep" name="orientation">
-            <option value="most-intense">Most intense peaks</option>
-            <option value="least-intense">Least intense peaks</option>
-          </param>
-        </repeat>
-
-
-        <param name="activation" type="select" label="Filter by Activation">
-          <option value="false" selected="true">no</option>
-          <option value="ETD">ETD</option>
-          <option value="CID">CID</option>
-          <option value="SA">SA</option>
-          <option value="HCD">HCD</option>
-          <!-- BEGIN_VERSION_3 -->
-          <option>BIRD</option>
-          <option>ECD</option>
-          <option>IRMPD</option>
-          <option>PD</option>
-          <option>PSD</option>
-          <option>PQD</option>
-          <option>SID</option>
-          <option>SORI</option>
-          <!-- END_VERSION_3 -->
-        </param>
-
-        <repeat name="indices" title="Filter Scan Indices">
-          <param name="from" type="integer" label="Filter Scan Index From" value="0" optional="false" />
-          <param name="to" type="integer" label="Filter Scan Index To" value="0" optional="true" />
-        </repeat>
-
-        <repeat name="scan_numbers" title="Filter Scan Numbers">
-          <param name="from" type="integer" label="Filter Scan Number From" value="0" optional="false" />
-          <param name="to" type="integer" label="Filter Scan Number To" value="0" optional="true" />
-        </repeat>
-
-        <conditional name="filter_mz_windows">
-          <param name="do_filter" type="boolean" truevalue="true" falsevalue="false" label="Filter m/z Window" help="" />
-          <when value="false" />
-          <when value="true">
-            <param name="from" type="float" label="Filter m/z From" value="0.0" optional="false" />
-            <param name="to" type="float" label="Filter m/z To" value="0.0" optional="true" />
-          </when>
-        </conditional>
-
-        <param type="boolean" name="strip_it" label="Strip Ion Trap MS1 Scans" />
-
-        <conditional name="filter_ms_levels">
-          <param name="do_filter" type="boolean" label="Filter MS Levels" />
-          <when value="false" />
-          <when value="true">
-            <param name="from" type="integer" label="Filter MS Level From" value="0" optional="false" />
-            <param name="to" type="integer" label="Filter MS Level To" value="0" optional="true" />
-          </when>
-        </conditional>
-
-        <conditional name="etd_filtering">
-          <param name="do_etd_filtering" type="select" label="ETD Filtering">
-            <option value="none" selected="true">none</option>
-            <option value="default">yes (with default options)</option>
-            <option value="advanced">yes (show advanced options) </option>
-          </param>
-          <when value="none" />
-          <when value="default" />
-          <when value="advanced">
-            <param name="matching_tolerance" type="float" label="ETD Matching Tolernace" value="3.1">
-            </param>
-            <param name="matching_tolerance_units" type="select" label="Units for ETD Matching Tolerance">
-              <option value="MZ" selected="true">mz</option>
-              <option value="PPM">ppm</option>
-            </param>
-            <param name="remove_precursor" type="select" label="ETD Remove Precursor">
-              <option value="true" selected="true">yes</option>
-              <option value="false">no</option>
-            </param>
-            <param name="remove_charge_reduced" type="select" label="ETD Remove Charge Reduced">
-              <option value="true" selected="true">yes</option>
-              <option value="false">no</option>
-            </param>
-            <param name="remove_neutral_loss" type="select" label="ETD Remove Neutral Loss">
-              <option value="true" selected="true">yes</option>
-              <option value="false">no</option>
-            </param>
-            <param name="blanket_removal" type="select" label="ETD Blanket Removal">
-              <option value="true" selected="true">yes</option>
-              <option value="false">no</option>
-            </param>
-          </when>
-        </conditional>
-
-
-        <!-- BEGIN_VERSION_3 -->
-        <conditional name="ms2denoise">
-          <param name="denoise" type="boolean" label="De-noise MS2 with moving window filter"  />
-          <when value="true">
-            <param name="num_peaks" label="De-noise: Number of peaks in window" value="6" type="integer" />
-            <param name="window_width" type="float" label="De-noise: Window width (Daltons)" value="30" />
-            <param name="relax" label="De-noise: Multicharge fragment relaxation" checked="true" type="boolean" truevalue="true" falsevalue="false" />
-          </when>
-          <when value="false" />
-        </conditional>
-        <param name="ms2deisotope" type="boolean" label="Deisotope MS2 using Markey method" help="" truevalue="true" falsevalue="false" />
-
-        <param name="polarity" type="select" label="Filter by Polarity">
-          <option value="false" selected="true">no</option>
-          <option value="positive">positive</option>
-          <option value="negative">negative</option>
-        </param>
-
-        <param name="analyzer" type="select" label="Filter by Analyzer">
-          <option value="false" selected="true">no</option>
-          <option value="quad">quad</option>
-          <option value="orbi">orbi</option>
-          <option value="FT">FT</option>
-          <option value="IT">IT</option>
-          <option value="TOF">TOF</option>
-        </param>
-        <!-- END_VERSION_3 -->
-      </when>
-    </conditional>
-
-    <conditional name="settings">
-      <param name="settingsType" type="select" label="Advanced Settings" help="">
-        <option value="default">Use Defaults</option>
-        <option value="full">Full Parameter List</option>
-      </param>
-      <when value="default" />
-      <when value="full">
-        <param type="select" name="binary_encoding" label="Binary Encoding Precision">
-          <option value="64" selected="true">64</option>
-          <option value="32">32</option>
-        </param>
-        <param type="select" name="mz_encoding" label="m/z Encoding Precision">
-          <option value="64" selected="true">64</option>
-          <option value="32">32</option>
-        </param>
-        <param type="select" name="intensity_encoding" label="Intensity Encoding Precision" value="32">
-          <option value="64">64</option>
-          <option value="32" selected="true">32</option>
-        </param>
-        <param type="boolean" name="zlib" label="Use zlib">
-        </param>
-      </when>
-    </conditional>
-
-
+  <expand macro="msconvertCommand" />
+  <inputs> 
+      <param format="mzml,mzxml,mz5,mgf,ms2,thermo.raw,raw,wiff,wiff.tar,agilentbrukeryep.d.tar,agilentmasshunter.d.tar,brukerbaf.d.tar,brukertdf.d.tar,watersmasslynx.raw.tar" name="input" type="data" label="Input unrefined MS data" />
+      <expand macro="msconvertInputParameters" />
   </inputs>
-  <outputs>
-    <data format="mzml" name="output" label="${type.input.name.rsplit('.',1)[0]}.${output_type}" >
-      <change_format>
-        <when input="output_type" value="mzXML" format="mzxml" />
-        <when input="output_type" value="unindexed_mzXML" format="mzxml" />
-        <when input="output_type" value="ms2" format="ms2" />
-        <when input="output_type" value="mgf" format="mgf" />
-      </change_format>
-    </data>
-  </outputs>
+  <expand macro="msconvertOutput" />
+  <tests>
+      <expand macro="msconvert_tests" />
+  </tests>
   <help>
-**What it does**
-
-Allows interconversion within various mass spectrometry peak list formats. Additional options such as filtering and/or precursor recalculation are available.
-
-You can view the original documentation here_.
-
-.. _here: http://proteowizard.sourceforge.net/tools/msconvert.html
-
-------
-
-**Citation**
-
-For the underlying tool, please cite `ProteoWizard: Open Source Software for Rapid Proteomics Tools Development. Darren Kessner; Matt Chambers; Robert Burke; David Agus; Parag Mallick. Bioinformatics 2008; doi: 10.1093/bioinformatics/btn323.`
-
-If you use this tool in Galaxy, please cite Chilton J, et al.
-https://github.com/galaxyproteomics/tools-galaxyp/
-
+      <expand macro="msconvert_help" />
   </help>
+  <expand macro="citations" />
 </tool>