view OpenSwathChromatogramExtractor.xml @ 14:92ecd10e5c03 draft default tip

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 5c080b1e2b99f1c88f4557e9fec8c45c9d23b906
author galaxyp
date Fri, 14 Jun 2024 21:41:20 +0000
parents f78d734b7c01
children
line wrap: on
line source

<!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
<!--Proposed Tool Section: [Targeted Experiments and OpenSWATH]-->
<tool id="OpenSwathChromatogramExtractor" name="OpenSwathChromatogramExtractor" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
  <description>Extract chromatograms (XIC) from a MS2 map file</description>
  <macros>
    <token name="@EXECUTABLE@">OpenSwathChromatogramExtractor</token>
    <import>macros.xml</import>
  </macros>
  <expand macro="requirements"/>
  <expand macro="stdio"/>
  <command detect_errors="exit_code"><![CDATA[@QUOTE_FOO@
@EXT_FOO@
#import re

## Preprocessing
mkdir in_cond.in &&
#if $in_cond.in_select == "no"
mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
${' '.join(["cp '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
cp '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
#end if
mkdir tr &&
cp '$tr' 'tr/${re.sub("[^\w\-_]", "_", $tr.element_identifier)}.$gxy2omsext($tr.ext)' &&
#if $rt_norm:
  mkdir rt_norm &&
  cp '$rt_norm' 'rt_norm/${re.sub("[^\w\-_]", "_", $rt_norm.element_identifier)}.$gxy2omsext($rt_norm.ext)' &&
#end if
mkdir out &&

## Main program call

set -o pipefail &&
@EXECUTABLE@ -write_ctd ./ &&
python3 '$__tool_directory__/fill_ctd.py' '@EXECUTABLE@.ctd' '$args_json' '$hardcoded_json' &&
@EXECUTABLE@ -ini @EXECUTABLE@.ctd
-in
#if $in_cond.in_select == "no"
${' '.join(["'in_cond.in/%s/%s.%s'"%(i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
#else
'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)'
#end if
-tr
'tr/${re.sub("[^\w\-_]", "_", $tr.element_identifier)}.$gxy2omsext($tr.ext)'
#if $rt_norm:
  -rt_norm
  'rt_norm/${re.sub("[^\w\-_]", "_", $rt_norm.element_identifier)}.$gxy2omsext($rt_norm.ext)'
#end if
-out
'out/output.${gxy2omsext("mzml")}'

## Postprocessing
&& mv 'out/output.${gxy2omsext("mzml")}' '$out'
#if "ctd_out_FLAG" in $OPTIONAL_OUTPUTS
  && mv '@EXECUTABLE@.ctd' '$ctd_out'
#end if]]></command>
  <configfiles>
    <inputs name="args_json" data_style="paths"/>
    <configfile name="hardcoded_json"><![CDATA[{"log": "log.txt", "threads": "\${GALAXY_SLOTS:-1}", "no_progress": true}]]></configfile>
  </configfiles>
  <inputs>
    <conditional name="in_cond">
      <param name="in_select" type="select" label="Run tool in batch mode for -in">
        <option value="no">No: process all datasets jointly</option>
        <option value="yes">Yes: process each dataset in an independent job</option>
      </param>
      <when value="no">
        <param argument="-in" type="data" format="mzml" multiple="true" label="Input files separated by blank" help=" select mzml data sets(s)"/>
      </when>
      <when value="yes">
        <param argument="-in" type="data" format="mzml" label="Input files separated by blank" help=" select mzml data sets(s)"/>
      </when>
    </conditional>
    <param argument="-tr" type="data" format="csv,traml" label="transition file ('TraML' or 'csv')" help=" select csv,traml data sets(s)"/>
    <param argument="-rt_norm" type="data" format="trafoxml" optional="true" label="RT normalization file (how to map the RTs of this run to the ones stored in the library)" help=" select trafoxml data sets(s)"/>
    <param argument="-min_upper_edge_dist" type="float" value="0.0" label="Minimal distance to the edge to still consider a precursor, in Thomson" help=""/>
    <param argument="-rt_window" type="float" value="-1.0" label="Extraction window in RT dimension (-1 means extract over the whole range)" help="This is the full window size, e.g. a value of 1000 seconds would extract 500 seconds on either side"/>
    <param argument="-ion_mobility_window" type="float" value="-1.0" label="Extraction window in ion mobility dimension (in milliseconds)" help="This is the full window size, e.g. a value of 10 milliseconds would extract 5 milliseconds on either side"/>
    <param argument="-mz_window" type="float" min="0.0" value="0.05" label="Extraction window in m/z dimension (in Thomson, to use ppm see -ppm flag)" help="This is the full window size, e.g. 100 ppm would extract 50 ppm on either side"/>
    <param argument="-ppm" type="boolean" truevalue="true" falsevalue="false" checked="false" label="m/z extraction_window is in ppm" help=""/>
    <param argument="-is_swath" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Set this flag if the data is SWATH data" help=""/>
    <param argument="-extract_MS1" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Extract the MS1 transitions based on the precursor values in the TraML file (useful for extracting MS1 XIC)" help=""/>
    <section name="model" title="Options to control the modeling of retention time transformations from data" help="" expanded="false">
      <param name="type" argument="-model:type" type="select" label="Type of model" help="">
        <option value="linear" selected="true">linear</option>
        <option value="b_spline">b_spline</option>
        <option value="interpolated">interpolated</option>
        <option value="lowess">lowess</option>
        <expand macro="list_string_san" name="type"/>
      </param>
      <param name="symmetric_regression" argument="-model:symmetric_regression" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Only for 'linear' model: Perform linear regression on 'y - x' vs" help="'y + x', instead of on 'y' vs. 'x'"/>
    </section>
    <expand macro="adv_opts_macro">
      <param argument="-extraction_function" type="select" label="Function used to extract the signal" help="">
        <option value="tophat" selected="true">tophat</option>
        <option value="bartlett">bartlett</option>
        <expand macro="list_string_san" name="extraction_function"/>
      </param>
      <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
      <param argument="-test" type="hidden" value="False" label="Enables the test mode (needed for internal use only)" help="" optional="true">
        <expand macro="list_string_san" name="test"/>
      </param>
    </expand>
    <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
      <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option>
    </param>
  </inputs>
  <outputs>
    <data name="out" label="${tool.name} on ${on_string}: out" format="mzml"/>
    <data name="ctd_out" format="xml" label="${tool.name} on ${on_string}: ctd">
      <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
    </data>
  </outputs>
  <tests>
    <!-- TOPP_OpenSwathChromatogramExtractor_test_1 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="extraction_function" value="tophat"/>
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="OpenSwathChromatogramExtractor_input.mzML"/>
      </conditional>
      <param name="tr" value="OpenSwathChromatogramExtractor_input.TraML"/>
      <output name="out" value="OpenSwathChromatogramExtractor_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <param name="min_upper_edge_dist" value="0.0"/>
      <param name="rt_window" value="-1.0"/>
      <param name="ion_mobility_window" value="-1.0"/>
      <param name="mz_window" value="0.05"/>
      <param name="ppm" value="false"/>
      <param name="is_swath" value="false"/>
      <param name="extract_MS1" value="false"/>
      <section name="model">
        <param name="type" value="linear"/>
        <param name="symmetric_regression" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_OpenSwathChromatogramExtractor_test_2 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="extraction_function" value="tophat"/>
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="OpenSwathChromatogramExtractor_input.mzML"/>
      </conditional>
      <param name="tr" value="OpenSwathChromatogramExtractor_input.TraML"/>
      <param name="rt_norm" value="OpenSwathChromatogramExtractor_input.trafoXML"/>
      <output name="out" value="OpenSwathChromatogramExtractor_output_2.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <param name="min_upper_edge_dist" value="0.0"/>
      <param name="rt_window" value="50.0"/>
      <param name="ion_mobility_window" value="-1.0"/>
      <param name="mz_window" value="0.05"/>
      <param name="ppm" value="false"/>
      <param name="is_swath" value="false"/>
      <param name="extract_MS1" value="false"/>
      <section name="model">
        <param name="type" value="linear"/>
        <param name="symmetric_regression" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_OpenSwathChromatogramExtractor_test_3 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="extraction_function" value="tophat"/>
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="OpenSwathChromatogramExtractor_input.mzML"/>
      </conditional>
      <param name="tr" value="OpenSwathChromatogramExtractor_input.TraML"/>
      <output name="out" value="OpenSwathChromatogramExtractor_output_3.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <param name="min_upper_edge_dist" value="0.0"/>
      <param name="rt_window" value="-1.0"/>
      <param name="ion_mobility_window" value="-1.0"/>
      <param name="mz_window" value="0.05"/>
      <param name="ppm" value="false"/>
      <param name="is_swath" value="false"/>
      <param name="extract_MS1" value="true"/>
      <section name="model">
        <param name="type" value="linear"/>
        <param name="symmetric_regression" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_OpenSwathChromatogramExtractor_test_4 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="extraction_function" value="tophat"/>
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="OpenSwathChromatogramExtractor_4_input.mzML"/>
      </conditional>
      <param name="tr" value="OpenSwathChromatogramExtractor_4_input.TraML"/>
      <output name="out" value="OpenSwathChromatogramExtractor_4_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <param name="min_upper_edge_dist" value="0.0"/>
      <param name="rt_window" value="-1.0"/>
      <param name="ion_mobility_window" value="0.05"/>
      <param name="mz_window" value="0.05"/>
      <param name="ppm" value="false"/>
      <param name="is_swath" value="true"/>
      <param name="extract_MS1" value="false"/>
      <section name="model">
        <param name="type" value="linear"/>
        <param name="symmetric_regression" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
    <!-- TOPP_OpenSwathChromatogramExtractor_test_5 -->
    <test expect_num_outputs="2">
      <section name="adv_opts">
        <param name="extraction_function" value="tophat"/>
        <param name="force" value="false"/>
        <param name="test" value="true"/>
      </section>
      <conditional name="in_cond">
        <param name="in" value="OpenSwathChromatogramExtractor_input.mzML"/>
      </conditional>
      <param name="tr" value="OpenSwathChromatogramExtractor_5_input.TraML"/>
      <output name="out" value="OpenSwathChromatogramExtractor_5_output.mzML" compare="sim_size" delta_frac="0.7" ftype="mzml"/>
      <param name="min_upper_edge_dist" value="0.0"/>
      <param name="rt_window" value="-1.0"/>
      <param name="ion_mobility_window" value="-1.0"/>
      <param name="mz_window" value="0.05"/>
      <param name="ppm" value="false"/>
      <param name="is_swath" value="false"/>
      <param name="extract_MS1" value="true"/>
      <section name="model">
        <param name="type" value="linear"/>
        <param name="symmetric_regression" value="false"/>
      </section>
      <param name="OPTIONAL_OUTPUTS" value="ctd_out_FLAG"/>
      <output name="ctd_out" ftype="xml">
        <assert_contents>
          <is_valid_xml/>
        </assert_contents>
      </output>
      <assert_stdout>
        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
      </assert_stdout>
    </test>
  </tests>
  <help><![CDATA[Extract chromatograms (XIC) from a MS2 map file.


For more information, visit https://openms.de/doxygen/release/3.1.0/html/TOPP_OpenSwathChromatogramExtractor.html]]></help>
  <expand macro="references"/>
</tool>