comparison msconvert_macros.xml.orig @ 12:9ec469ff191a draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/msconvert commit ecdc3a64aa245d80dbc5487b2bf10a85a43adc6d
author galaxyp
date Fri, 22 Mar 2019 14:18:29 -0400
parents 9d5de24e6ef7
children
comparison
equal deleted inserted replaced
11:cc5ccfa8ee28 12:9ec469ff191a
1 <macros>
2 <token name="@VERSION@">3.0.19052</token>
3 <token name="@FULL_VERSION@">@VERSION@-089e81090</token>
4
5 <xml name="msconvertCommand">
6 <command detect_errors="exit_code">
7 <![CDATA[
8 #import re
9 #set $ext = $input.ext
10
11 ## sanitize display name for use as temp filename
12 #set basename = $re.sub(r'[^\w\.\-\+]','_',$input.element_identifier)
13
14 #if $ext == 'wiff':
15 ln -s '${input.extra_files_path}/wiff' '${basename}.wiff' &&
16 ln -s '${input.extra_files_path}/wiff_scan' '${basename}.wiff.scan' &&
17 #elif $ext.endswith('tar'):
18 ln -s '$input' '${basename}' &&
19 tar xf '${basename}' &&
20 #set basename = $os.path.splitext($basename)[0]
21 #else
22 ln -s '$input' '${basename}' &&
23 #end if
24
25 #if $data_processing.precursor_refinement.use_mzrefinement
26 #set input_ident_name = ".".join((os.path.splitext($basename)[0], $data_processing.precursor_refinement.input_ident.ext))
27 #set output_refinement_name = os.path.splitext($basename)[0] + '.mzRefinement.tsv'
28 ln -s '$data_processing.precursor_refinement.input_ident' '$input_ident_name' &&
29 #end if
30
31 uid=`id -u` &&
32 gid=`id -g` &&
33
34 wine64_anyuser msconvert '${basename}'
35 --outdir outputs
36 --${output_type}
37
38 #if $general_options.combineIonMobilitySpectra:
39 --combineIonMobilitySpectra
40 #end if
41
42 #if $general_options.simAsSpectra:
43 --simAsSpectra
44 #end if
45
46 #if $general_options.srmAsSpectra:
47 --srmAsSpectra
48 #end if
49
50 #if $general_options.acceptZeroLengthSpectra:
51 --acceptZeroLengthSpectra
52 #end if
53
54 #if $general_options.ignoreUnknownInstrumentError:
55 --ignoreUnknownInstrumentError
56 #end if
57
58 #if $general_options.scan_summing.do_scan_summing:
59 --filter "scanSumming precursorTol=$general_options.scan_summing.precursorTol scanTimeTol=$general_options.scan_summing.scanTimeTol ionMobilityTol=$general_options.scan_summing.ionMobilityTol"
60 #end if
61
62 #if $general_options.multi_run_output.do_multi_run_output:
63 #if len($general_options.multi_run_output.run_index_set) > 0
64 --runIndexSet "
65 #for $index in $general_options.multi_run_output.run_index_set
66 [${index.from},${index.to}]
67 #end for
68 "
69 #end if
70 #else
71 --runIndexSet $general_options.multi_run_output.runIndexSet
72 #end if
73
74 ## Strip sourceFile location since it is meaningless on HPC systems and causes problems with functional tests
75 --stripLocationFromSourceFiles
76
77 ## DATA PROCESSING FILTERS (NOTE: FOR VENDOR METHOD TO WORK, PEAK PICKING MUST BE THE FIRST FILTER!)
78 #if $data_processing.peak_picking.pick_peaks
79 --filter "peakPicking $data_processing.peak_picking.pick_peaks_algorithm msLevel=$data_processing.peak_picking.pick_peaks_ms_levels"
80 #end if
81
82 #if $data_processing.precursor_refinement.use_mzrefinement
83 --filter "mzRefiner $input_ident_name
84 msLevels=$data_processing.precursor_refinement.precursor_refinement_ms_levels
85 thresholdScore=$data_processing.precursor_refinement.thresholdScore
86 thresholdValue=$data_processing.precursor_refinement.thresholdValue
87 thresholdStep=$data_processing.precursor_refinement.thresholdStep
88 maxSteps=$data_processing.precursor_refinement.thresholdMaxSteps assumeHighRes=1"
89 #end if
90
91 #if str($data_processing.charge_state_calculation.charge_state_calculation_method) == "predictor"
92 --filter "chargeStatePredictor
93 overrideExistingCharge=$data_processing.charge_state_calculation.predictor_overrideExistingCharge
94 minMultipleCharge=$data_processing.charge_state_calculation.minMultipleCharge
95 maxMultipleCharge=$data_processing.charge_state_calculation.maxMultipleCharge
96 singleChargeFractionTIC=$data_processing.charge_state_calculation.singleChargeFractionTIC
97 maxKnownCharge=$data_processing.charge_state_calculation.maxKnownCharge"
98 #else if str($data_processing.charge_state_calculation.charge_state_calculation_method) == "turbocharger"
99 --filter "turbocharger
100 minCharge=$data_processing.charge_state_calculation.minCharge
101 maxCharge=$data_processing.charge_state_calculation.maxCharge
102 precursorsBefore=$data_processing.charge_state_calculation.precursorsBefore
103 precursorsAfter=$data_processing.charge_state_calculation.precursorsAfter
104 halfIsoWidth=$data_processing.charge_state_calculation.halfIsoWidth
105 defaultMinCharge=$data_processing.charge_state_calculation.defaultMinCharge
106 defaultMaxCharge=$data_processing.charge_state_calculation.defaultMaxCharge"
107 #end if
108
109 #for threshold_entry in $data_processing.thresholds
110 --filter "threshold $threshold_entry.threshold_type $threshold_entry.value $threshold_entry.orientation"
111 #end for
112
113 #if $data_processing.filter_mz_windows.do_mzwindow_filter
114 --filter "mzWindow [$data_processing.filter_mz_windows.mz_window_from,$data_processing.filter_mz_windows.mz_window_to]"
115 #end if
116
117 #if $data_processing.etd_filtering.do_etd_filtering
118 --filter "ETDFilter $data_processing.etd_filtering.remove_precursor
119 $data_processing.etd_filtering.remove_charge_reduced
120 $data_processing.etd_filtering.remove_neutral_loss
121 $data_processing.etd_filtering.blanket_removal
122 $data_processing.etd_filtering.matching_tolerance$data_processing.etd_filtering.matching_tolerance_units"
123 #end if
124
125 #if $data_processing.ms2denoise.denoise
126 --filter "MS2Denoise $data_processing.ms2denoise.num_peaks $data_processing.ms2denoise.window_width $data_processing.ms2denoise.relax"
127 #end if
128
129 #if str($data_processing.ms2deisotope) == "true"
130 --filter "MS2Deisotope"
131 #end if
132
133
134 ## SCAN INCLUSION/EXCLUSION FILTERS
135 #if str($filtering.activation) != "false"
136 --filter "activation $filtering.activation"
137 #end if
138
139 #if len($filtering.indices) > 0
140 --filter "index
141 #for $index in $filtering.indices
142 [${index.from},${index.to}]
143 #end for
144 "
145 #end if
146
147 #if len($filtering.scan_numbers) > 0
148 --filter "scanNumber
149 #for $scan_number in $filtering.scan_numbers
150 [${scan_number.from},${scan_number.to}]
151 #end for
152 "
153 #end if
154
155 #if $filtering.strip_it.value
156 --filter "stripIT"
157 #end if
158
159 #if $filtering.filter_ms_levels.do_ms_level_filter
160 --filter "msLevel [$filtering.filter_ms_levels.ms_level_from, $filtering.filter_ms_levels.ms_level_to]"
161 #end if
162
163 #if str($filtering.polarity) != "false"
164 --filter "polarity $filtering.polarity"
165 #end if
166
167 #if str($filtering.analyzer) != "false"
168 --filter "analyzer $filtering.analyzer"
169 #end if
170
171 ## OUTPUT ENCODING
172 #set $mz_encoding = str($settings.mz_encoding)
173 #set $intensity_encoding = str($settings.intensity_encoding)
174 #if $mz_encoding == $intensity_encoding
175 #if $mz_encoding == "64"
176 --64
177 #else
178 --32
179 #end if
180 #else
181 --mz${mz_encoding}
182 --inten${intensity_encoding}
183 #end if
184
185 #set binary_compression = str($settings.binary_compression)
186 #if $binary_compression == "zlib"
187 --zlib
188 #else if $binary_compression == "numpressLinearPic"
189 --numpressLinear --numpressPic
190 #else if $binary_compression == "numpressLinearSlof"
191 --numpressLinear --numpressSlof
192 #else if $binary_compression == "numpressLinear"
193 --numpressLinear
194 #else if $binary_compression == "numpressPic"
195 --numpressPic
196 #else if $binary_compression == "numpressSlof"
197 --numpressSlof
198 #end if
199
200 #if $settings.gzip_compression
201 --gzip
202 #end if
203
204 #if $general_options.multi_run_output.do_multi_run_output == 'false':
205 --outfile '${os.path.splitext($basename)[0]}'
206 && sudo mv 'outputs/${os.path.splitext($basename)[0]}.${output_type}' '${output}' && sudo chown \$uid:\$gid '${output}'
207 #else
208 && sudo chown \$uid:\$gid 'outputs'/*
209 && ls -la outputs/
210 #end if
211
212 #if $data_processing.precursor_refinement.use_mzrefinement
213 && sudo mv '$output_refinement_name' '$output_refinement' && sudo chown \$uid:\$gid '$output_refinement'
214 #end if
215 ]]>
216 </command>
217 </xml>
218
219 <xml name="msconvertInputParameters">
220 <param name="license_agreement" type="boolean" label="Do you agree to the vendor licenses?" help="This tool uses proprietary vendor libraries; to run it you must agree to the vendor licenses. Read them at http://www.proteowizard.org/licenses.html">
221 <validator type="expression" message="You must agree to the vendor licenses to run msconvert.">True == value</validator>
222 </param>
223
224 <param name="output_type" type="select" label="Output Type">
225 <<<<<<< HEAD
226 <option value="mz5" selected="true">mz5</option>
227 <option value="mzml">mzML</option>
228 <option value="mzxml">mzXML</option>
229 <option value="mgf">mgf</option>
230 <option value="ms2">ms2</option>
231 =======
232 <option value="mz5" selected="true">mz5</option>
233 <option value="mzML">mzML</option>
234 <option value="mzXML">mzXML</option>
235 <option value="mgf">mgf</option>
236 <option value="ms2">ms2</option>
237 >>>>>>> 4d10e7e3d0c5541f26c6de354471c71aa0e61213
238 </param>
239
240 <section name="data_processing" title="Data Processing Filters">
241 <conditional name="peak_picking">
242 <param type="boolean" name="pick_peaks" label="Apply peak picking?" truevalue="true" falsevalue="false" />
243 <when value="false" />
244 <when value="true">
245 <param name="pick_peaks_ms_levels" type="select" label="Peak Peaking - Apply to MS Levels">
246 <option value="1">MS1 Only (1)</option>
247 <option value="2">MS2 Only (2)</option>
248 <option value="2-">MS2 and on (2-)</option>
249 <option value="1-" selected="true">All Levels (1-)</option>
250 </param>
251 <param type="select" name="pick_peaks_algorithm" label="Peak Picking - Algorithm" help="The vendor method only works on Agilent, Bruker, Sciex, Thermo data, and only on Windows (although some vendors work on Wine)">
252 <option value="vendor" selected="true">Prefer vendor algorithm, fallback to local-maximum</option>
253 <option value="cwt">CantWaiT - continuous wavelet transform</option>
254 </param>
255 </when>
256 </conditional>
257
258 <conditional name="precursor_refinement">
259 <param type="boolean" name="use_mzrefinement" label="Apply m/z refinement with identification data?" truevalue="true" falsevalue="false" checked="False" />
260 <when value="false"></when>
261 <when value="true">
262 <param name="input_ident" type="data" format="pepxml,mzid" label="MZRefinery - Input identification data" />
263 <param name="thresholdScore" type="text" value="mvh" label="MZRefinery - Threshold Score Name" help="E.g. 'mvh' for MyriMatch, 'xcorr' for Sequest, 'specevalue' for MS-GF+">
264 <sanitizer>
265 <valid initial="string.letters" />
266 </sanitizer>
267 </param>
268 <param name="thresholdValue" type="text" value="50-" label="MZRefinery - Threshold Score Value" help="MZRefinery uses peptide-spectrum-matches with scores from this range to build its model. '100-' means score equal to or greater than 100. '-1e-10' means less than or equal to 1e-10.">
269 <sanitizer>
270 <valid initial="string.letters,string.digits">
271 <add value="-" />
272 </valid>
273 </sanitizer>
274 </param>
275 <param name="thresholdStep" type="float" value="0" label="MZRefinery - Threshold Score Step" help="If there are not enough quality hits at the given score threshold value, the threshold can be increased by this step (until maxSteps is reached)." />
276 <param name="thresholdMaxSteps" type="integer" value="0" label="MZRefinery - At most, how many steps to widen the threshold?" />
277 <param name="precursor_refinement_ms_levels" type="select" label="MZRefinery - Apply to MS Levels">
278 <option value="1">MS1 Only (1)</option>
279 <option value="2">MS2 Only (2)</option>
280 <option value="2-">MS2 and on (2-)</option>
281 <option value="1-" selected="true">All Levels (1-)</option>
282 </param>
283 </when>
284 </conditional>
285
286 <conditional name="charge_state_calculation">
287 <param name="charge_state_calculation_method" type="select" label="(Re-)calculate charge states?">
288 <option value="false">no</option>
289 <option value="predictor">Based on how much intensity is above vs. below the precursor m/z in the MS/MS scan</option>
290 <option value="turbocharger">Based on isotopic distribution of the precursor in nearby survey scans</option>
291 </param>
292 <when value="false" />
293 <when value="predictor">
294 <param name="predictor_overrideExistingCharge" type="boolean" label="Always override existing charge?" value="false" />
295 <param name="minMultipleCharge" type="integer" label="Minimum multiple charge state" value="2" />
296 <param name="maxMultipleCharge" type="integer" label="Maximum multiple charge state" value="3" />
297 <param name="singleChargeFractionTIC" type="float" label="Fraction of intensity below the precursor to be considered singly charged" max="1" min="0" value="0.9" />
298 <param name="maxKnownCharge" type="integer" label="Maximum charge allowed for &quot;known&quot; charges" help="This is applied even when not overriding existing charges (i.e. it overrides only obviously bogus charge states)" value="0" />
299 </when>
300 <when value="turbocharger">
301 <param name="minCharge" type="integer" label="Minimum possible charge state" value="1" min="1" help="Charge states lower than this will not be considered." />
302 <param name="maxCharge" type="integer" label="Maximum possible charge state" value="8" min="2" help="Charge states greater than this will not be considered." />
303 <param name="precursorsBefore" type="integer" label="Number of preceding survey scans to check for precursor isotopes" value="2" min="1" />
304 <param name="precursorsAfter" type="integer" label="Number of succeeding survey scans to check for precursor isotopes" value="0" min="0" />
305 <param name="halfIsoWidth" type="float" label="Half-width of isolation window" min="0.0001" value="1.25" />
306 <param name="defaultMinCharge" type="integer" label="Minimum possible charge state to apply if no isotope is found" value="0" />
307 <param name="defaultMaxCharge" type="integer" label="Maximum possible charge state to apply if no isotope is found" value="0" />
308 </when>
309 </conditional>
310
311 <repeat name="thresholds" title="Filter by Threshold">
312 <param type="select" label="Specify threshold on" name="threshold_type" help="">
313 <option value="count">Peak count</option>
314 <option value="count-after-ties">Peak count (after ties)</option>
315 <option value="absolute">Peak absolute intensity</option>
316 <option value="bpi-relative">Fraction of base peak intensity</option>
317 <option value="tic-relative">Fraction of total ion current</option>
318 <option value="tic-fraction">Aggregate fraction of total ion current</option>
319 </param>
320 <param type="float" name="value" label="Threshold" value="1" help="For count methods, this is the number of peaks to keep. For the absolute method, this is the raw intensity above/below which peak will be accepted. For the &quot;Aggregated fraction&quot; method, peaks are accepted until this fraction of the TIC is accounted for." />
321 <param type="select" label="Keep" name="orientation">
322 <option value="most-intense">Most intense peaks</option>
323 <option value="least-intense">Least intense peaks</option>
324 </param>
325 </repeat>
326
327 <conditional name="filter_mz_windows">
328 <param name="do_mzwindow_filter" type="boolean" truevalue="true" falsevalue="false" label="Filter m/z Window" help="" />
329 <when value="false" />
330 <when value="true">
331 <param name="mz_window_from" type="float" label="Filter m/z From" value="0.0" optional="false" />
332 <param name="mz_window_to" type="float" label="Filter m/z To" value="0.0" optional="true" />
333 </when>
334 </conditional>
335
336 <conditional name="etd_filtering">
337 <param type="boolean" name="do_etd_filtering" label="Filter out ETD precursor peaks?" truevalue="true" falsevalue="false" />
338 <when value="false" />
339 <when value="true">
340 <param name="remove_precursor" type="select" label="ETD Remove Unreacted Precursor">
341 <option value="true" selected="true">yes</option>
342 <option value="false">no</option>
343 </param>
344 <param name="remove_charge_reduced" type="select" label="ETD Remove Charge Reduced Precursors">
345 <option value="true" selected="true">yes</option>
346 <option value="false">no</option>
347 </param>
348 <param name="remove_neutral_loss" type="select" label="ETD Remove Neutral Losses" help="Remove neutral loss species from nominal and charge reduced precursors">
349 <option value="true" selected="true">yes</option>
350 <option value="false">no</option>
351 </param>
352 <param name="blanket_removal" type="select" label="ETD Blanket Removal of Neutral Losses" help="Remove neutral losses in a charge-scaled 60 Da swath (rather than only around known loss species)">
353 <option value="true" selected="true">yes</option>
354 <option value="false">no</option>
355 </param>
356 <param name="matching_tolerance" type="float" label="ETD Matching Tolerance" value="3.1" />
357 <param name="matching_tolerance_units" type="select" label="Units for ETD Matching Tolerance">
358 <option value="MZ" selected="true">mz</option>
359 <option value="PPM">ppm</option>
360 </param>
361 </when>
362 </conditional>
363
364 <conditional name="ms2denoise">
365 <param name="denoise" type="boolean" label="De-noise MS2 with moving window filter" />
366 <when value="true">
367 <param name="num_peaks" label="De-noise: Number of peaks in window" value="6" type="integer" />
368 <param name="window_width" type="float" label="De-noise: Window width (Daltons)" value="30" />
369 <param name="relax" label="De-noise: Multicharge fragment relaxation" checked="true" type="boolean" truevalue="true" falsevalue="false" />
370 </when>
371 <when value="false" />
372 </conditional>
373
374 <param name="ms2deisotope" type="boolean" label="Deisotope MS2 using Markey method" help="" truevalue="true" falsevalue="false" />
375
376 </section>
377
378
379 <section name="filtering" title="Scan Inclusion/Exclusion Filters">
380
381 <param name="activation" type="select" label="Filter by Activation">
382 <option value="false" selected="true">no</option>
383 <option value="ETD">ETD</option>
384 <option value="CID">CID</option>
385 <option value="SA">SA</option>
386 <option value="HCD">HCD</option>
387 <option value="BIRD">BIRD</option>
388 <option value="ECD">ECD</option>
389 <option value="IRMPD">IRMPD</option>
390 <option value="PD">PD</option>
391 <option value="PSD">PSD</option>
392 <option value="PQD">PQD</option>
393 <option value="SID">SID</option>
394 <option value="SORI">SORI</option>
395 </param>
396
397 <repeat name="indices" title="Filter Scan Indices">
398 <param name="from" type="integer" label="Filter Scan Index From" value="0" optional="false" />
399 <param name="to" type="integer" label="Filter Scan Index To" value="0" optional="true" />
400 </repeat>
401
402 <repeat name="scan_numbers" title="Filter Scan Numbers">
403 <param name="from" type="integer" label="Filter Scan Number From" value="0" optional="false" />
404 <param name="to" type="integer" label="Filter Scan Number To" value="0" optional="true" />
405 </repeat>
406
407 <param type="boolean" name="strip_it" label="Strip Ion Trap MS1 Scans" />
408
409 <conditional name="filter_ms_levels">
410 <param name="do_ms_level_filter" type="boolean" label="Filter MS Levels" />
411 <when value="false" />
412 <when value="true">
413 <param name="ms_level_from" type="integer" label="Filter MS Level From" value="0" optional="false" />
414 <param name="ms_level_to" type="integer" label="Filter MS Level To" value="0" optional="true" />
415 </when>
416 </conditional>
417
418 <param name="polarity" type="select" label="Filter by Polarity">
419 <option value="false" selected="true">no</option>
420 <option value="positive">positive</option>
421 <option value="negative">negative</option>
422 </param>
423
424 <param name="analyzer" type="select" label="Filter by Analyzer">
425 <option value="false" selected="true">no</option>
426 <option value="quad">Quadrupole</option>
427 <option value="orbi">Orbitrap</option>
428 <option value="FT">Fourier-transform</option>
429 <option value="IT">Ion trap</option>
430 <option value="TOF">Time of flight</option>
431 </param>
432 </section>
433
434 <section name="general_options" title="General Options">
435 <param argument="--combineIonMobilitySpectra" type="boolean" label="Combine ion mobility spectra" help="When false, each mobility scan is written as a separate spectrum. When true, each retention time point will have a single merged scan. For Bruker TIMS spectra, the ion mobilities will be preserved in a separate binaryDataArray, and for TIMS PASEF MS2s, each precursor will be merged separately." />
436
437 <conditional name="scan_summing">
438 <param name="do_scan_summing" type="boolean" truevalue="true" falsevalue="false" label="Sum adjacent scans" help="Sums MS2 sub-scans whose precursors are similar in the m/z, scan time, and/or ion mobility dimensions. It is useful for some Waters DDA data and Bruker PASEF data, where sub-scans should be summed together to increase the SNR" />
439 <when value="false" />
440 <when value="true">
441 <param name="precursorTol" type="float" label="Precursor m/z tolerance" value="0.05" min="0" optional="true" help="Spectra with precursor m/z values with a difference less than this tolerance are summed together." />
442 <param name="scanTimeTol" type="float" label="Scan time tolerance" value="10.0" min="0" optional="true" help="Spectra with scan times with a difference less than this tolerance (in seconds) are summed together." />
443 <param name="ionMobilityTol" type="float" label="Ion mobility tolerance" value="0.01" min="0" optional="true" help="Spectra with ion mobility values with a difference less than this tolerance are summed together. Only relevant for ion mobility spectra." />
444 </when>
445 </conditional>
446
447 <param argument="--simAsSpectra" type="boolean" label="SIM as Spectra" help="Write selected ion monitoring as spectra, not chromatograms" />
448 <param argument="--srmAsSpectra" type="boolean" label="SRM as Spectra" help="Write selected reaction monitoring as spectra, not chromatograms" />
449 <param argument="--acceptZeroLengthSpectra" type="boolean" label="Accept zero-length spectra" help="Some vendor readers have an efficient way of filtering out empty spectra, but it takes more time to open the file" />
450 <param argument="--ignoreUnknownInstrumentError" type="boolean" label="Ignore unknown instrument error" help="If true, if an instrument cannot be determined from a vendor file, it will not be an error" />
451
452 <conditional name="multi_run_output">
453 <param name="do_multi_run_output" type="boolean" truevalue="true" falsevalue="false" label="Output multiple runs per file" help="Some input types can store multiple runs (samples) in a single file (e.g. WIFF). Each run must be written to a separate output file, so check this option if you want to output all runs for a file (each file will create a dataset collection)" />
454 <when value="false">
455 <param argument="--runIndexSet" type="integer" label="Select a single run for multi-run sources" value="0" min="0" help="For multi-run sources (e.g. WIFF), select only the specified run index (first run is index 0)" />
456 </when>
457 <when value="true">
458 <repeat name="run_index_set" title="Select runs for multi-run sources" help="For multi-run sources (e.g. WIFF), select only the specified run indices">
459 <param name="from" type="integer" label="Run Index From" value="0" min="0" optional="false" />
460 <param name="to" type="integer" label="Run Index To" value="0" min="0" optional="true" />
461 </repeat>
462 </when>
463 </conditional>
464 </section>
465
466 <section name="settings" title="Output Encoding Settings">
467 <param type="select" name="mz_encoding" label="m/z Encoding Precision">
468 <option value="64" selected="true">64</option>
469 <option value="32">32</option>
470 </param>
471 <param type="select" name="intensity_encoding" label="Intensity Encoding Precision">
472 <option value="64">64</option>
473 <option value="32" selected="true">32</option>
474 </param>
475 <param type="select" name="binary_compression" label="Binary data compression">
476 <option value="false">None</option>
477 <option value="zlib" selected="true">zlib</option>
478 <option value="numpressLinearPic">numpressLinear/numpressPic</option>
479 <option value="numpressLinearSlof">numpressLinear/numpressSlof</option>
480 <option value="numpressLinear">numpressLinear only</option>
481 <option value="numpressPic">numpressPic only</option>
482 <option value="numpressSlof">numpressSlof only</option>
483 </param>
484 <param type="boolean" name="gzip_compression" label="Compress output file with gzip" truevalue="true" falsevalue="false" />
485 </section>
486 </xml>
487
488 <xml name="msconvertOutput">
489 <outputs>
490 <data format="mzml" name="output" label="${($input.name[:-4] if $input.name.endswith('.tar') else $input.name).rsplit('.',1)[0]}.${output_type}" >
491 <filter>general_options['multi_run_output']['do_multi_run_output'] == False</filter>
492 <change_format>
493 <when input="output_type" value="mz5" format="mz5" />
494 <when input="output_type" value="mzxml" format="mzxml" />
495 <when input="output_type" value="ms2" format="ms2" />
496 <when input="output_type" value="mgf" format="mgf" />
497 </change_format>
498 </data>
499 <data format="tsv" name="output_refinement" label="${($input.name[:-4] if $input.name.endswith('.tar') else $input.name).rsplit('.',1)[0]}.mzRefinement.tsv">
500 <filter>data_processing['precursor_refinement']['use_mzrefinement'] == True</filter>
501 </data>
502 <collection name="multi_run_output_list" type="list" label="${($input.name[:-4] if $input.name.endswith('.tar') else $input.name).rsplit('.',1)[0]}.${output_type}">
503 <filter>general_options['multi_run_output']['do_multi_run_output'] == True</filter>
504 <discover_datasets pattern="__name_and_ext__" directory="outputs" />
505 </collection>
506 </outputs>
507 </xml>
508
509
510 <xml name="msconvert_tests">
511 <test>
512 <param name="input" value="small.mzML" />
513 <param name="license_agreement" value="true" />
514 <param name="output_type" value="mzml" />
515 <param name="pick_peaks" value="true" />
516 <param name="pick_peaks_algorithm" value="cwt" />
517 <param name="pick_peaks_ms_levels" value="1-" />
518 <output name="output" file="small-peakpicking-cwt-allMS.mzML" lines_diff="8" />
519 </test>
520 <test>
521 <param name="input" value="small.RAW" ftype="thermo.raw" />
522 <param name="license_agreement" value="true" />
523 <param name="output_type" value="mzml" />
524 <param name="pick_peaks" value="true" />
525 <param name="pick_peaks_algorithm" value="vendor" />
526 <param name="pick_peaks_ms_levels" value="1-" />
527 <output name="output" file="small-peakpicking-vendor-allMS.mzML" lines_diff="4" />
528 </test>
529 <test>
530 <param name="input" value="ThyroglobMRM000003.d.tar" />
531 <param name="license_agreement" value="true" />
532 <param name="output_type" value="mzml" />
533 <param name="combineIonMobilitySpectra" value="true" />
534 <param name="do_scan_summing" value="true" />
535 <output name="output" file="ThyroglobMRM000003.mzML" lines_diff="4" />
536 </test>
537 <test>
538 <param name="input" value="MassLynxTest.raw.tar" />
539 <param name="license_agreement" value="true" />
540 <<<<<<< HEAD
541 <param name="output_type" value="mzml" />
542 <output name="output" file="MassLynxTest.mzML" />
543 =======
544 <param name="output_type" value="mzML" />
545 <output name="output" file="MassLynxTest.mzML" lines_diff="4" />
546 >>>>>>> 4d10e7e3d0c5541f26c6de354471c71aa0e61213
547 </test>
548 <test>
549 <param name="input" value="AgilentMassHunterTest.d.tar" />
550 <param name="license_agreement" value="true" />
551 <<<<<<< HEAD
552 <param name="output_type" value="mzxml" />
553 <output name="output" file="AgilentMassHunterTest.mzXML" />
554 =======
555 <param name="output_type" value="mzXML" />
556 <output name="output" file="AgilentMassHunterTest.mzXML" lines_diff="4" />
557 >>>>>>> 4d10e7e3d0c5541f26c6de354471c71aa0e61213
558 </test>
559 <test>
560 <param name="input" value="BrukerBafTest.d.tar" />
561 <param name="license_agreement" value="true" />
562 <param name="output_type" value="mzml" />
563 <param name="pick_peaks" value="true" />
564 <param name="pick_peaks_algorithm" value="vendor" />
565 <param name="pick_peaks_ms_levels" value="1-" />
566 <output name="output" file="BrukerBafTest.mzML" lines_diff="4" />
567 </test>
568 <test>
569 <param name="input" value="SciexTest.wiff.tar" />
570 <param name="license_agreement" value="true" />
571 <param name="output_type" value="mzml" />
572 <param name="do_multi_run_output" value="false" />
573 <param name="runIndexSet" value="0" />
574 <output name="output" file="SciexTest-HPINalone.mzML" lines_diff="4" />
575 </test>
576 <test>
577 <param name="input" value="SciexTest.wiff.tar" />
578 <param name="license_agreement" value="true" />
579 <param name="output_type" value="mzxml" />
580 <param name="do_multi_run_output" value="false" />
581 <param name="runIndexSet" value="0" />
582 <param name="indices_0|from" value="0" />
583 <param name="indices_0|to" value="499" />
584 <param name="srmAsSpectra" value="true" />
585 <output name="output" file="SciexTest-HPINalone-srmAsSpectra.mzXML" lines_diff="4" />
586 </test>
587 <test>
588 <param name="input" value="SciexTest.wiff.tar" />
589 <param name="license_agreement" value="true" />
590 <param name="output_type" value="mzxml" />
591 <param name="do_multi_run_output" value="false" />
592 <param name="runIndexSet" value="1" />
593 <param name="indices_0|from" value="0" />
594 <param name="indices_0|to" value="499" />
595 <param name="srmAsSpectra" value="true" />
596 <output name="output" file="SciexTest-HPINalone-NE-srmAsSpectra.mzXML" lines_diff="4" />
597 </test>
598 <test>
599 <param name="input" value="SciexTest.wiff.tar" />
600 <param name="license_agreement" value="true" />
601 <param name="output_type" value="mzml" />
602 <param name="do_multi_run_output" value="true" />
603 <param name="run_index_set_0|from" value="0" />
604 <param name="run_index_set_0|to" value="1" />
605 <output_collection name="multi_run_output_list" type="list">
606 <element name="SciexTest-HPINalone" file="SciexTest-HPINalone.mzML" lines_diff="4" />
607 <element name="SciexTest-HPINalone+NE" file="SciexTest-HPINalone-NE.mzML" lines_diff="4" />
608 </output_collection>
609 </test>
610 <test>
611 <param name="input" value="SciexTest.wiff.tar" />
612 <param name="license_agreement" value="true" />
613 <param name="output_type" value="mzml" />
614 <param name="do_multi_run_output" value="true" />
615 <output_collection name="multi_run_output_list" type="list">
616 <element name="SciexTest-HPINalone" file="SciexTest-HPINalone.mzML" lines_diff="4" />
617 <element name="SciexTest-HPINalone+NE" file="SciexTest-HPINalone-NE.mzML" lines_diff="4" />
618 </output_collection>
619 </test>
620
621 <!-- this data file only has profile MS1, so the result is the same -->
622 <test>
623 <param name="input" value="small.mzML" />
624 <param name="license_agreement" value="true" />
625 <param name="output_type" value="mzml" />
626 <param name="pick_peaks" value="true" />
627 <param name="pick_peaks_algorithm" value="cwt" />
628 <param name="pick_peaks_ms_levels" value="1" />
629 <output name="output" file="small-peakpicking-cwt-allMS.mzML" lines_diff="6" />
630 </test>
631 <test>
632 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
633 <param name="license_agreement" value="true" />
634 <param name="output_type" value="mz5" />
635 <param name="mz_encoding" value="64" />
636 <param name="intensity_encoding" value="64" />
637 <output name="output" file="small-zlib-64.mz5" compare="sim_size" delta="150000" />
638 </test>
639 <test>
640 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
641 <param name="license_agreement" value="true" />
642 <param name="output_type" value="mzxml" />
643 <param name="mz_encoding" value="32" />
644 <param name="intensity_encoding" value="32" />
645 <output name="output" file="small-zlib-32.mzXML" lines_diff="6" />
646 </test>
647 <!-- TODO: how to test gzipped output?
648 <test>
649 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
650 <param name="output_type" value="mzxml" />
651 <param name="mz_encoding" value="32" />
652 <param name="intensity_encoding" value="32" />
653 <param name="binary_compression" value="false" />
654 <param name="gzip_compression" value="true" />
655 <output name="output" file="small-off-32.mzXML.gz" compare="sim_size" delta="100" />
656 </test>
657 <test>
658 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
659 <param name="output_type" value="mzml" />
660 <param name="mz_encoding" value="32" />
661 <param name="intensity_encoding" value="32" />
662 <param name="binary_compression" value="false" />
663 <param name="gzip_compression" value="true" />
664 <output name="output" file="small-off-32.mzML.gz" compare="sim_size" delta="100" />
665 </test>-->
666
667 <test>
668 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
669 <param name="license_agreement" value="true" />
670 <param name="output_type" value="mzml" />
671 <param name="binary_compression" value="numpressLinearPic" />
672 <output name="output" file="small-numpressLP.mzML" lines_diff="114" />
673 </test>
674
675 <test>
676 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
677 <param name="license_agreement" value="true" />
678 <param name="output_type" value="mzml" />
679 <param name="binary_compression" value="numpressLinearSlof" />
680 <output name="output" file="small-numpressLS.mzML" lines_diff="114" />
681 </test>
682
683 <test>
684 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
685 <param name="license_agreement" value="true" />
686 <param name="output_type" value="mzml" />
687 <param name="binary_compression" value="numpressLinear" />
688 <output name="output" file="small-numpressL.mzML" lines_diff="114" />
689 </test>
690
691 <test>
692 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
693 <param name="license_agreement" value="true" />
694 <param name="output_type" value="mzml" />
695 <param name="binary_compression" value="numpressPic" />
696 <output name="output" file="small-numpressP.mzML" lines_diff="114" />
697 </test>
698
699 <test>
700 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
701 <param name="license_agreement" value="true" />
702 <param name="output_type" value="mzml" />
703 <param name="binary_compression" value="numpressSlof" />
704 <output name="output" file="small-numpressS.mzML" lines_diff="114" />
705 </test>
706
707 <test>
708 <param name="input" value="Rpal_01.mz5" />
709 <param name="license_agreement" value="true" />
710 <param name="output_type" value="mzml" />
711 <param name="binary_compression" value="numpressLinearPic" />
712 <param name="use_mzrefinement" value="true" />
713 <param name="input_ident" value="Rpal_01.pepXML" />
714 <param name="thresholdScore" value="mvh" />
715 <param name="thresholdValue" value="40-" />
716 <output name="output" file="Rpal_01-mzRefinement.mzML" compare="sim_size" delta="0" />
717 <output name="output_refinement" file="Rpal_01.pepXML.mzRefinement.tsv" />
718 </test>
719
720 <test>
721 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
722 <param name="license_agreement" value="true" />
723 <param name="output_type" value="mzml" />
724 <param name="binary_compression" value="numpressLinearPic" />
725 <param name="charge_state_calculation_method" value="predictor" />
726 <param name="predictor_overrideExistingCharge" value="true" />
727 <param name="minMultipleCharge" value="2" />
728 <param name="maxMultipleCharge" value="5" />
729 <param name="singleChargeFractionTIC" value="0.95" />
730 <param name="maxKnownCharge" value="8" />
731 <output name="output" file="small-chargeStatePredictor.mzML" lines_diff="114" />
732 </test>
733 <test>
734 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
735 <param name="license_agreement" value="true" />
736 <param name="output_type" value="mzml" />
737 <param name="binary_compression" value="numpressLinearPic" />
738 <param name="charge_state_calculation_method" value="turbocharger" />
739 <param name="minCharge" value="1" />
740 <param name="maxCharge" value="5" />
741 <param name="precursorsBefore" value="1" />
742 <param name="precursorsAfter" value="1" />
743 <param name="halfIsoWidth" value="1.5" />
744 <param name="defaultMinCharge" value="1" />
745 <param name="defaultMaxCharge" value="5" />
746 <output name="output" file="small-turbocharger.mzML" lines_diff="114" />
747 </test>
748 <test>
749 <param name="input" value="D100930_yeast_SCX10S_rak_ft8E_pc_01.mz5" />
750 <param name="license_agreement" value="true" />
751 <param name="output_type" value="mzml" />
752 <param name="do_etd_filtering" value="true" />
753 <param name="remove_precursor" value="true" />
754 <param name="remove_charge_reduced" value="true" />
755 <param name="remove_neutral_loss" value="false" />
756 <param name="blanket_removal" value="false" />
757 <param name="matching_tolerance" value="50" />
758 <param name="matching_tolerance_units" value="ppm" />
759 <param name="binary_compression" value="numpressLinearPic" />
760 <output name="output" file="D100930_yeast_SCX10S_rak_ft8E_pc_01-etdfilter.mzML" />
761 </test>
762 <test>
763 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
764 <param name="license_agreement" value="true" />
765 <param name="output_type" value="mzml" />
766 <param name="thresholds_0|threshold_type" value="count" />
767 <param name="thresholds_0|value" value="100" />
768 <param name="thresholds_0|orientation" value="most-intense" />
769 <param name="thresholds_1|threshold_type" value="absolute" />
770 <param name="thresholds_1|value" value="1" />
771 <param name="thresholds_1|orientation" value="most-intense" />
772 <param name="binary_compression" value="numpressLinearPic" />
773 <output name="output" file="small-threshold.mzML" lines_diff="114" />
774 </test>
775 <test>
776 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
777 <param name="license_agreement" value="true" />
778 <param name="output_type" value="mzml" />
779 <param name="do_mzwindow_filter" value="true" />
780 <param name="mz_window_from" value="420" />
781 <param name="mz_window_to" value="840" />
782 <param name="binary_compression" value="numpressLinearPic" />
783 <output name="output" file="small-mzWindow.mzML" lines_diff="114" />
784 </test>
785 <test>
786 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
787 <param name="license_agreement" value="true" />
788 <param name="output_type" value="mzml" />
789 <param name="denoise" value="true" />
790 <param name="num_peaks" value="10" />
791 <param name="window_width" value="40" />
792 <param name="relax" value="false" />
793 <param name="binary_compression" value="numpressLinearPic" />
794 <output name="output" file="small-denoise.mzML" lines_diff="114" />
795 </test>
796 <test>
797 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
798 <param name="license_agreement" value="true" />
799 <param name="output_type" value="mzml" />
800 <param name="ms2deisotope" value="true" />
801 <param name="binary_compression" value="numpressLinearPic" />
802 <output name="output" file="small-deisotope.mzML" lines_diff="114" />
803 </test>
804 <test>
805 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
806 <param name="license_agreement" value="true" />
807 <param name="output_type" value="mzml" />
808 <param name="activation" value="CID" />
809 <param name="binary_compression" value="numpressLinearPic" />
810 <output name="output" file="small-activation.mzML" lines_diff="114" />
811 </test>
812 <test>
813 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
814 <param name="license_agreement" value="true" />
815 <param name="output_type" value="mzml" />
816 <param name="indices_0|from" value="2" />
817 <param name="indices_0|to" value="4" />
818 <param name="indices_1|from" value="10" />
819 <param name="indices_1|to" value="10" />
820 <param name="indices_2|from" value="13" />
821 <param name="indices_2|to" value="15" />
822 <param name="binary_compression" value="numpressLinearPic" />
823 <output name="output" file="small-index-filter.mzML" lines_diff="32" />
824 </test>
825 <test>
826 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
827 <param name="license_agreement" value="true" />
828 <param name="output_type" value="mzml" />
829 <param name="strip_it" value="true" />
830 <param name="binary_compression" value="numpressLinearPic" />
831 <output name="output" file="small-strip-it.mzML" lines_diff="100" />
832 </test>
833 <test>
834 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
835 <param name="license_agreement" value="true" />
836 <param name="output_type" value="mzml" />
837 <param name="do_ms_level_filter" value="true" />
838 <param name="ms_level_from" value="2" />
839 <param name="ms_level_to" value="2" />
840 <param name="binary_compression" value="numpressLinearPic" />
841 <output name="output" file="small-ms-level-filter.mzML" lines_diff="86" />
842 </test>
843 <test>
844 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
845 <param name="license_agreement" value="true" />
846 <param name="output_type" value="mzml" />
847 <param name="polarity" value="positive" />
848 <param name="binary_compression" value="numpressLinearPic" />
849 <output name="output" file="small-polarity-filter.mzML" lines_diff="114" />
850 </test>
851 <test>
852 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
853 <param name="license_agreement" value="true" />
854 <param name="output_type" value="mzml" />
855 <param name="analyzer" value="IT" />
856 <param name="binary_compression" value="numpressLinearPic" />
857 <output name="output" file="small-analyzer-filter.mzML" lines_diff="100" />
858 </test>
859 <test>
860 <param name="input" value="small-peakpicking-cwt-allMS.mzML" />
861 <param name="license_agreement" value="true" />
862 <param name="output_type" value="mzml" />
863 <param name="scan_numbers_0|from" value="3" />
864 <param name="scan_numbers_0|to" value="5" />
865 <param name="scan_numbers_1|from" value="11" />
866 <param name="scan_numbers_1|to" value="11" />
867 <param name="scan_numbers_2|from" value="14" />
868 <param name="scan_numbers_2|to" value="16" />
869 <param name="binary_compression" value="numpressLinearPic" />
870 <output name="output" file="small-index-filter.mzML" lines_diff="86"/> <!-- the scan numbers here produce the same output as the index test above -->
871 </test>
872 <!--<test>
873 <param name="input" value="small.mzML" />
874 <param name="output_type" value="mzml" />
875 <param name="binary_compression" value="numpressLinearPic" />
876 <output name="output" file="small-deisotope-poisson.mzML" />
877 </test>-->
878 </xml>
879 <xml name="msconvert_help">
880 **What it does**
881
882 Converts mass spectrometry (MS) files: proprietary MS vendor formats can be converted to open MS formats (mzML, mzXML, MGF, MS1/MS2) and open formats can be converted to other open formats. Additional options such as filtering and/or precursor recalculation are available.
883
884 You can view the original documentation here_.
885
886 .. _here: http://proteowizard.sourceforge.net/tools/msconvert.html
887 </xml>
888
889 <xml name="citations">
890 <citations>
891 <citation type="doi">10.1093/bioinformatics/btn323</citation>
892 <citation type="bibtex">@misc{toolsGalaxyP, author = {Chilton, J, Chambers MC, et al.}, title = {Galaxy Proteomics Tools}, publisher = {GitHub}, journal = {GitHub repository},
893 year = {2015}, url = {https://github.com/galaxyproteomics/tools-galaxyp}}</citation> <!-- TODO: fix substitution of commit ", commit = {$sha1$}" -->
894 </citations>
895 </xml>
896
897 </macros>