Allows generically the wrapping of external tools.

pot. predecessor tools → GenericWrapper → pot. successor tools
any file the external tool can read any tool reading the output format
IDFileConverter (to produce pepXML) → GenericWrapper (type 'ProteinProphet') → IDFileConverter (protXML to idXML)
RAW file → GenericWrapper (type 'RAWFileConvert') →

any tool accepting mzML

This tool is a wrapper to call external (non-OpenMS) executables/scripts. Each supported tool is represented by a certain type. Each type exposes certain parameters which you can set (usually at least a in and out).

To obtain support for more external programs, visit the OpenMS website or (if you cannot find your tool there) ask on the OpenMS mailing list.

The following section is for experts only, who want to add their own external tool:

Each external tool is configured via a wrapper XML file in 'OpenMS/share/OpenMS/TOOLS/EXTERNAL'. All files have the ending .ttd (TOPP tool description). You can add one or more wrappers (i.e. types) per file, but we recommend one. The filename does not really matter, but it should be descriptive.

The ttd file has the following structure:


The name of the type which is added to list of valid GenericWrapper types. It should be unique, otherwise you get a fatal error.


Category for TOPPAS.


Command line options (arguments) appended to the executable. This string might contain placeholders of the form "%<i>" where each placeholder will be substituted with a value that is determined in the mappings section (see below).


<cloptions>-o "%1" --mzML "%2"</cloptions>


Path (can be relative) to the executable that is executed.


Used to replace placeholders with input parameters. The mapping id corresponds to the placeholder in cloptions. The template used as starting string is given in cl. All tokens therein will be replaced and the result will be patched into the cloptions string. Allowed tokens are:

  • %TMP --> The current temp directory, fetched using File::getTempDirectory()
  • %DIR --> directory prefix, e.g.:, c:/tmp/mzfile.mzML gives 'c:/tmp'
  • %BASENAME[file] --> the basename of a file, e.g. c:/tmp/myfile.mzML gives 'myfile'
  • %RND --> generates a long random number, which can be used to generate unique directory or file names in a <file_pre> tag
  • %WORKINGDIR --> expands to the current working directory (default is '.'), settable by <workingdirectory> tag in the .ttd file.
  • %%<param> --> any param registered in the ini_param section, e.g. '%%in'


<mapping id="2" cl="-output_file %BASENAME[%%in].mgf -temp_dir %TMP -depth 3" />


Contains part of a normal INI file with describes the parameters. Valid tags are those that are in the ParamXML scheme below 'NODE', e.g. 'ITEM'. Example:

<ITEM name="out" value="" type="string" description="output XML file containg regression line and confidence interval" tags="output file" />
<ITEM name="mz_tolerance" value="1" type="float" description="Tolerance in m/z dimension" />

The command line parameters of this tool are:

Warning: Unable to fetch subsection parameters! Addressing subsection parameters will not work for this tool (did you forget to specify '-type'?).

GenericWrapper -- Allows the generic wrapping of external tools.
Full documentation:
Version: 3.2.0-pre-nightly-2024-07-21 Jul 22 2024, 02:13:52, Revision: b650df0
To cite OpenMS:
 + Pfeuffer, J., Bielow, C., Wein, S. et al.. OpenMS 3 enables reproducible analysis of large-scale mass spec
   trometry data. Nat Methods (2024). doi:10.1038/s41592-024-02197-7.

  GenericWrapper <options>

This tool has algorithm parameters that are not shown here! Please check the ini file for a detailed descript
ion or use the --helphelp option

Options (mandatory options marked with '*'):
  -type *            Which external tool configuration to load?! See '/home/runner/work/OpenMS/OpenMS/OpenMS/
                     share/OpenMS/TOOLS/EXTERNAL'. (valid: 'hardklor', 'MascotPercolator', 'RAWFileConvert', 
                     'MSGFtoPercolator', 'Percolator', 'QCMLExport', 'RAWDirConvert', 'Rscript_generic', 'Rsc
                     ript_mzTab2tsv_PEP', 'Rscript_mzTab2tsv_PRT', 'Rscript_mzTab2tsv_PSM', 'Rscript_qcfigure
                     s_acc', 'Rscript_qcfigures_idmap', 'Rscript_qcfigures_rt_acc', 'Rscript_qcfigures_setid'
                     , 'Rscript_qcfigures_tic', 'Rscript_qcfigures_inj', 'TPP_RefreshParser', 'XTandemToPerco
                     lator', 'mail', 'TPP_ProteinProphet')
Common UTIL options:
  -ini <file>        Use the given TOPP INI file
  -threads <n>       Sets the number of threads allowed to be used by the TOPP tool (default: '1')
  -write_ini <file>  Writes the default configuration file
  --help             Shows options
  --helphelp         Shows all options (including advanced)

The following configuration subsections are valid:
 - ETool   tool specific parameters

You can write an example INI file using the '-write_ini' option.
Documentation of subsection parameters can be found in the doxygen documentation or the INIFileEditor.
For more information, please consult the online documentation for this tool:

INI file documentation of this tool: