OpenMS
Loading...
Searching...
No Matches
TOPPBase.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3//
4// --------------------------------------------------------------------------
5// $Maintainer: Timo Sachsenberg $
6// $Authors: Marc Sturm, Clemens Groepl $
7// --------------------------------------------------------------------------
8
9#pragma once
10
15
18
20
22
23#include <fstream>
24#include <map>
25#include <vector>
26
27namespace OpenMS
28{
29 class FeatureMap;
30 class ConsensusMap;
31 struct ParameterInformation;
32
45 struct Citation
46 {
47 std::string authors;
48 std::string title;
49 std::string when_where;
50 std::string doi;
51
53 std::string toString() const
54 {
55 return authors + ". " + title + ". " + when_where + ". doi:" + doi + ".";
56 }
57 };
58
59 namespace Exception
60 {
62 class OPENMS_DLLAPI UnregisteredParameter :
64 {
65public:
66 UnregisteredParameter(const char* file, int line, const char* function, const std::string& parameter) :
67 BaseException(file, line, function, "UnregisteredParameter", parameter)
68 {
69 GlobalExceptionHandler::getInstance().setMessage(what());
70 }
71
72 };
74 class OPENMS_DLLAPI WrongParameterType :
76 {
77public:
78 WrongParameterType(const char* file, int line, const char* function, const std::string& parameter) :
79 BaseException(file, line, function, "WrongParameterType", parameter)
80 {
81 GlobalExceptionHandler::getInstance().setMessage(what());
82 }
83
84 };
86 class OPENMS_DLLAPI RequiredParameterNotGiven :
88 {
89public:
90 RequiredParameterNotGiven(const char* file, int line, const char* function, const std::string& parameter) :
91 BaseException(file, line, function, "RequiredParameterNotGiven", parameter)
92 {
93 GlobalExceptionHandler::getInstance().setMessage(what());
94 }
95
96 };
97 }
98
119 class OPENMS_DLLAPI TOPPBase
120 {
121public:
122 inline static const char* TAG_OUTPUT_FILE = "output file";
123 inline static const char* TAG_INPUT_FILE = "input file";
124 inline static const char* TAG_OUTPUT_DIR = "output dir";
125 inline static const char* TAG_OUTPUT_PREFIX = "output prefix";
126 inline static const char* TAG_ADVANCED = "advanced";
127 inline static const char* TAG_REQUIRED = "required";
128
148
149
150
152 TOPPBase() = delete;
153
155 TOPPBase(const TOPPBase&) = delete;
156
167 TOPPBase(const std::string& name, const std::string& description, bool official = true, const std::vector<Citation>& citations = {}, bool toolhandler_test = true);
168
170 virtual ~TOPPBase();
171
173 ExitCodes main(int argc, const char** argv);
174
182 static void setMaxNumberOfThreads(int num_threads);
183
191 std::string getToolPrefix() const;
192
194 std::string getDocumentationURL() const;
195
197 static const Citation cite_openms;
198
199 private:
201 std::string const tool_name_;
202
204 std::string const tool_description_;
205
208
210 std::string const ini_location_;
211
214
217
220
223
226
229
231 mutable std::ofstream log_;
232
241 void enableLogging_() const;
242
244 std::vector<ParameterInformation> parameters_;
245
255 virtual Param getSubsectionDefaults_(const std::string& section) const;
256
265
267 std::map<std::string, std::string> subsections_;
268
270 std::map<std::string, std::string> subsections_TOPP_;
271
272
285 Param parseCommandLine_(const int argc, const char** argv, const std::string& misc = "misc", const std::string& unknown = "unknown");
286
296 std::string getParamAsString_(const std::string& key, const std::string& default_value = "") const;
297
303 Int getParamAsInt_(const std::string& key, Int default_value = 0) const;
304
310 double getParamAsDouble_(const std::string& key, double default_value = 0) const;
311
317 StringList getParamAsStringList_(const std::string& key, const StringList& default_value) const;
318
324 IntList getParamAsIntList_(const std::string& key, const IntList& default_value) const;
325
331 DoubleList getParamAsDoubleList_(const std::string& key, const DoubleList& default_value) const;
332
342 bool getParamAsBool_(const std::string& key) const;
343
355 const ParamValue& getParam_(const std::string& key) const;
356
362 std::string getSubsection_(const std::string& name) const;
363
366
368 Param getToolUserDefaults_(const std::string& tool_name) const;
370
371protected:
373 std::string version_;
374
376 std::string verboseVersion_;
377
380
382 std::vector<Citation> citations_;
383
386
394 const std::string& getIniLocation_() const
395 {
396 return ini_location_;
397 }
398
400 const std::string& toolName_() const;
401
422 virtual void registerOptionsAndFlags_() = 0;
423
425 std::string getParamArgument_(const Param::ParamEntry& entry) const;
426
428 std::vector<ParameterInformation> paramToParameterInformation_(const Param& param) const;
429
439 ParameterInformation paramEntryToParameterInformation_(const Param::ParamEntry& entry, const std::string& argument = "", const std::string& full_name = "") const;
440
442
444 void registerFullParam_(const Param& param);
445
456 void registerStringOption_(const std::string& name, const std::string& argument, const std::string& default_value, const std::string& description, bool required = true, bool advanced = false);
457
464 void setValidStrings_(const std::string& name, const std::vector<std::string>& strings);
465
475 void setValidStrings_(const std::string& name, const std::string vstrings[], int count);
476
494 void registerInputFile_(const std::string& name, const std::string& argument, const std::string& default_value, const std::string& description, bool required = true, bool advanced = false, const StringList& tags = StringList());
495
509 void registerOutputFile_(const std::string& name, const std::string& argument, const std::string& default_value, const std::string& description, bool required = true, bool advanced = false);
510
531 void registerOutputPrefix_(const std::string& name, const std::string& argument, const std::string& default_value, const std::string& description, bool required = true, bool advanced = false);
532
545 void registerOutputDir_(const std::string& name, const std::string& argument, const std::string& default_value, const std::string& description, bool required = true, bool advanced = false);
546
547
560 void setValidFormats_(const std::string& name, const std::vector<std::string>& formats, const bool force_OpenMS_format = true);
561
562
573 void registerDoubleOption_(const std::string& name, const std::string& argument, double default_value, const std::string& description, bool required = true, bool advanced = false);
574
580 void setMinInt_(const std::string& name, Int min);
586 void setMaxInt_(const std::string& name, Int max);
592 void setMinFloat_(const std::string& name, double min);
598 void setMaxFloat_(const std::string& name, double max);
599
610 void registerIntOption_(const std::string& name, const std::string& argument,
611 Int default_value, const std::string& description,
612 bool required = true, bool advanced = false);
613
625 void registerIntList_(const std::string& name, const std::string& argument, const IntList& default_value, const std::string& description, bool required = true, bool advanced = false);
626
637 void registerDoubleList_(const std::string& name, const std::string& argument, const DoubleList& default_value, const std::string& description, bool required = true, bool advanced = false);
638
649 void registerStringList_(const std::string& name, const std::string& argument, const StringList& default_value, const std::string& description, bool required = true, bool advanced = false);
650
667 void registerInputFileList_(const std::string& name, const std::string& argument, const StringList& default_value, const std::string& description, bool required = true, bool advanced = false, const StringList& tags = StringList());
668
682 void registerOutputFileList_(const std::string& name, const std::string& argument, const StringList& default_value, const std::string& description, bool required = true, bool advanced = false);
683
685 void registerFlag_(const std::string& name, const std::string& description, bool advanced = false);
686
694 void registerSubsection_(const std::string& name, const std::string& description);
695
705 void registerTOPPSubsection_(const std::string& name, const std::string& description);
706
707
710
711
720 std::string getStringOption_(const std::string& name) const;
721
730 std::string getOutputDirOption(const std::string& name) const;
731
740 double getDoubleOption_(const std::string& name) const;
741
750 Int getIntOption_(const std::string& name) const;
751
760 StringList getStringList_(const std::string& name) const;
761
770 IntList getIntList_(const std::string& name) const;
771
780 DoubleList getDoubleList_(const std::string& name) const;
781
783 bool getFlag_(const std::string& name) const;
784
790 const ParameterInformation& findEntry_(const std::string& name) const;
791
797 Param const& getParam_() const;
798
812 void checkParam_(const Param& param, const std::string& filename, const std::string& location) const;
813
824 void fileParamValidityCheck_(const StringList& param_value, const std::string& param_name, const ParameterInformation& p) const;
825
841 void fileParamValidityCheck_(std::string& param_value, const std::string& param_name, const ParameterInformation& p) const;
842
852
855
857 virtual ExitCodes main_(int argc, const char** argv) = 0;
858
860
861
862 void writeLogInfo_(const std::string& text) const;
863
865 void writeLogWarn_(const std::string& text) const;
866
868 void writeLogError_(const std::string& text) const;
869
871 void writeDebug_(const std::string& text, UInt min_level) const;
872
874 void writeDebug_(const std::string& text, const Param& param, UInt min_level) const;
876
878
879
880 ExitCodes runExternalProcess_(const std::string& executable, const std::vector<std::string>& arguments, const std::string& workdir = "", const std::map<std::string, std::string>& env = {}) const;
881
884 ExitCodes runExternalProcess_(const std::string& executable, const std::vector<std::string>& arguments, std::string& proc_stdout, std::string& proc_stderr, const std::string& workdir = "", const std::map<std::string, std::string>& env = {}) const;
886
913 void inputFileReadable_(const std::string& filename, const std::string& param_name) const;
914
925 void outputFileWritable_(const std::string& filename, const std::string& param_name) const;
927
935 bool parseRange_(const std::string& text, double& low, double& high) const;
936
944 bool parseRange_(const std::string& text, Int& low, Int& high) const;
945
948
950
951
953 void addDataProcessing_(ConsensusMap& map, const DataProcessing& dp) const;
954
956 void addDataProcessing_(FeatureMap& map, const DataProcessing& dp) const;
957
959 void addDataProcessing_(PeakMap& map, const DataProcessing& dp) const;
960
963
965 DataProcessing getProcessingInfo_(const std::set<DataProcessing::ProcessingAction>& actions) const;
966
968
977 template <typename Writer>
978 void writeToolDescription_(Writer& writer, std::string write_type, std::string fileExtension);
979
992
994 static std::string topp_ini_file_;
995
998private:
999
1005 void addText_(const std::string& text);
1006
1015
1016 };
1017
1018} // namespace OpenMS
1019
const char * tool_name
Definition TOPPAS.cpp:69
A container for consensus elements.
Definition ConsensusMap.h:67
Description of the applied preprocessing steps.
Definition DataProcessing.h:28
ProcessingAction
Definition DataProcessing.h:34
Exception base class.
Definition Exception.h:63
A required parameter was not given.
Definition TOPPBase.h:88
RequiredParameterNotGiven(const char *file, int line, const char *function, const std::string &parameter)
Definition TOPPBase.h:90
An unregistered parameter was accessed.
Definition TOPPBase.h:64
UnregisteredParameter(const char *file, int line, const char *function, const std::string &parameter)
Definition TOPPBase.h:66
A parameter was accessed with the wrong type.
Definition TOPPBase.h:76
WrongParameterType(const char *file, int line, const char *function, const std::string &parameter)
Definition TOPPBase.h:78
A container for features.
Definition FeatureMap.h:78
In-Memory representation of a mass spectrometry run.
Definition MSExperiment.h:49
Class to hold strings, numeric values, vectors of strings and vectors of numeric values using the stl...
Definition ParamValue.h:31
Management and storage of parameters / INI files.
Definition Param.h:46
LogType
Possible log types.
Definition ProgressLogger.h:43
Base class for TOPP applications.
Definition TOPPBase.h:120
std::string getStringOption_(const std::string &name) const
Returns the value of a previously registered string option (use getOutputDirOption() for output direc...
void setValidFormats_(const std::string &name, const std::vector< std::string > &formats, const bool force_OpenMS_format=true)
Sets the formats for a input/output file option or for all members of an input/output file lists.
Param param_inifile_
All parameters specified in the ini file.
Definition TOPPBase.h:216
void registerInputFileList_(const std::string &name, const std::string &argument, const StringList &default_value, const std::string &description, bool required=true, bool advanced=false, const StringList &tags=StringList())
Registers a list of input files option.
void setValidStrings_(const std::string &name, const std::string vstrings[], int count)
Sets the valid strings for a string option or a whole string list.
Param const & getParam_() const
Return all parameters relevant to this TOPP tool.
bool getFlag_(const std::string &name) const
Returns the value of a previously registered flag.
void addEmptyLine_()
Adds an empty line between registered variables in the documentation.
std::vector< ParameterInformation > paramToParameterInformation_(const Param &param) const
Translates the given parameter object into a vector of ParameterInformation, that can be utilized for...
std::ofstream log_
Log file stream. Use the writeLog_() and writeDebug_() methods to access it.
Definition TOPPBase.h:231
std::string getToolPrefix() const
Returns the prefix used to identify the tool.
const ParamValue & getParam_(const std::string &key) const
Return the value key of parameters as DataValue. ParamValue::EMPTY indicates that a parameter was not...
bool getParamAsBool_(const std::string &key) const
Return the value of flag parameter key as bool.
void enableLogging_() const
Ensures that at least some default logging destination is opened for writing in append mode.
Param parseCommandLine_(const int argc, const char **argv, const std::string &misc="misc", const std::string &unknown="unknown")
Parses command line arguments using parameter definitions from TOPPBase.
bool toolhandler_test_
Enable the ToolHandler tests.
Definition TOPPBase.h:385
Param param_
All parameters relevant to this invocation of the program.
Definition TOPPBase.h:213
void setValidStrings_(const std::string &name, const std::vector< std::string > &strings)
Sets the valid strings for a string option or a whole string list.
std::string const tool_description_
Tool description. This is assigned once and for all in the constructor.
Definition TOPPBase.h:204
double getDoubleOption_(const std::string &name) const
Returns the value of a previously registered double option.
std::vector< ParameterInformation > parameters_
Storage location for parameter information.
Definition TOPPBase.h:244
std::map< std::string, std::string > subsections_
Storage location and description for allowed subsections.
Definition TOPPBase.h:267
void registerOutputDir_(const std::string &name, const std::string &argument, const std::string &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers an output directory used for tools with multiple output files which are not an output file ...
void registerSubsection_(const std::string &name, const std::string &description)
Registers an allowed subsection in the INI file (usually from OpenMS algorithms).
virtual ~TOPPBase()
Destructor.
void writeLogInfo_(const std::string &text) const
Writes a string to the log file and to OPENMS_LOG_INFO.
void printUsage_()
Prints the tool-specific command line options and appends the common options.
void registerStringOption_(const std::string &name, const std::string &argument, const std::string &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a string option.
void setMaxFloat_(const std::string &name, double max)
Sets the maximum value for the floating point parameter(can be a list of floating points,...
Int getIntOption_(const std::string &name) const
Returns the value of a previously registered integer option.
void registerTOPPSubsection_(const std::string &name, const std::string &description)
Registers an allowed subsection in the INI file originating from the TOPP tool itself.
void addDataProcessing_(FeatureMap &map, const DataProcessing &dp) const
Data processing setter for feature maps.
ExitCodes runExternalProcess_(const std::string &executable, const std::vector< std::string > &arguments, std::string &proc_stdout, std::string &proc_stderr, const std::string &workdir="", const std::map< std::string, std::string > &env={}) const
Param param_instance_
Parameters from instance section.
Definition TOPPBase.h:222
Int const instance_number_
Instance number.
Definition TOPPBase.h:207
std::vector< Citation > citations_
Papers, specific for this tool (will be shown in '–help')
Definition TOPPBase.h:382
DataProcessing getProcessingInfo_(const std::set< DataProcessing::ProcessingAction > &actions) const
Returns the data processing information.
ProgressLogger::LogType log_type_
Type of progress logging.
Definition TOPPBase.h:947
void addText_(const std::string &text)
void checkParam_(const Param &param, const std::string &filename, const std::string &location) const
Checks top-level entries of param according to the information during registration.
std::string version_
Version string (if empty, the OpenMS/TOPP version is printed)
Definition TOPPBase.h:373
std::string getOutputDirOption(const std::string &name) const
Returns the value of a previously registered output_dir option.
void registerStringList_(const std::string &name, const std::string &argument, const StringList &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a list of strings option.
ExitCodes runExternalProcess_(const std::string &executable, const std::vector< std::string > &arguments, const std::string &workdir="", const std::map< std::string, std::string > &env={}) const
Runs an external process via ExternalProcess and prints its stderr output on failure or if debug_leve...
ParameterInformation & getParameterByName_(const std::string &name)
Returns the parameter identified by the given name.
TOPPBase(const std::string &name, const std::string &description, bool official=true, const std::vector< Citation > &citations={}, bool toolhandler_test=true)
Constructor.
bool test_mode_
Test mode.
Definition TOPPBase.h:991
void writeToolDescription_(Writer &writer, std::string write_type, std::string fileExtension)
Helper function avoiding repeated code between CTD, JSON and CWL.
ExitCodes main(int argc, const char **argv)
Main routine of all TOPP applications.
void addDataProcessing_(PeakMap &map, const DataProcessing &dp) const
Data processing setter for peak maps.
static std::string topp_ini_file_
.TOPP.ini file for storing system default parameters
Definition TOPPBase.h:994
void registerIntOption_(const std::string &name, const std::string &argument, Int default_value, const std::string &description, bool required=true, bool advanced=false)
Registers an integer option.
TOPPBase()=delete
No default constructor.
StringList getStringList_(const std::string &name) const
Returns the value of a previously registered StringList.
std::string getParamAsString_(const std::string &key, const std::string &default_value="") const
Return the value of parameter key as a string or default_value if this value is not set.
void setMinInt_(const std::string &name, Int min)
Sets the minimum value for the integer parameter(can be a list of integers,too) name.
void inputFileReadable_(const std::string &filename, const std::string &param_name) const
Checks if an input file exists, is readable and is not empty.
virtual void registerOptionsAndFlags_()=0
Sets the valid command line options (with argument) and flags (without argument).
static const Citation cite_openms
The latest and greatest OpenMS citation.
Definition TOPPBase.h:197
const ParameterInformation & findEntry_(const std::string &name) const
Finds the entry in the parameters_ array that has the name name.
DataProcessing getProcessingInfo_(DataProcessing::ProcessingAction action) const
Returns the data processing information.
Param param_common_tool_
Parameters from common section with tool name.
Definition TOPPBase.h:225
DoubleList getParamAsDoubleList_(const std::string &key, const DoubleList &default_value) const
Return the value of parameter key as a DoubleList or default_value if this value is not set.
void registerDoubleList_(const std::string &name, const std::string &argument, const DoubleList &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a list of doubles option.
void writeDebug_(const std::string &text, UInt min_level) const
Writes a string to the log file and to OPENMS_LOG_DEBUG if the debug level is at least min_level.
Int debug_level_
Debug level set by -debug.
Definition TOPPBase.h:997
void writeDebug_(const std::string &text, const Param &param, UInt min_level) const
Writes a std::string followed by a Param to the log file and to OPENMS_LOG_DEBUG if the debug level i...
TOPPBase(const TOPPBase &)=delete
No default copy constructor.
bool official_
Flag indicating if this an official TOPP tool.
Definition TOPPBase.h:379
Param getDefaultParameters_() const
Returns the default parameters.
void registerOutputFile_(const std::string &name, const std::string &argument, const std::string &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers an output file option.
void registerInputFile_(const std::string &name, const std::string &argument, const std::string &default_value, const std::string &description, bool required=true, bool advanced=false, const StringList &tags=StringList())
Registers an input file option.
Param param_cmdline_
Parameters from command line.
Definition TOPPBase.h:219
const std::string & getIniLocation_() const
Returns the location of the ini file where parameters are taken from. E.g. if the command line was TO...
Definition TOPPBase.h:394
void registerOutputPrefix_(const std::string &name, const std::string &argument, const std::string &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers an output file prefix used for tools with multiple file output.
double getParamAsDouble_(const std::string &key, double default_value=0) const
Return the value of parameter key as a double or default_value if this value is not set.
void registerFlag_(const std::string &name, const std::string &description, bool advanced=false)
Registers a flag.
DoubleList getDoubleList_(const std::string &name) const
Returns the value of a previously registered DoubleList.
std::string const ini_location_
Location in the ini file where to look for parameters.
Definition TOPPBase.h:210
std::string getSubsection_(const std::string &name) const
Get the part of a parameter name that makes up the subsection.
const std::string & toolName_() const
Returns the tool name.
void setMaxInt_(const std::string &name, Int max)
Sets the maximum value for the integer parameter(can be a list of integers,too) name.
static void setMaxNumberOfThreads(int num_threads)
Sets the maximal number of usable threads.
void writeLogWarn_(const std::string &text) const
Writes a string to the log file and to OPENMS_LOG_WARN.
void outputFileWritable_(const std::string &filename, const std::string &param_name) const
Checks if an output file is writable.
IntList getIntList_(const std::string &name) const
Returns the value of a previously registered IntList.
void fileParamValidityCheck_(std::string &param_value, const std::string &param_name, const ParameterInformation &p) const
checks if an input file exists (respecting the flags)
void registerParamSubsectionsAsTOPPSubsections_(const Param &param)
std::map< std::string, std::string > subsections_TOPP_
Storage location and description for allowed subsections from TOPP tool's command-line parameters.
Definition TOPPBase.h:270
ExitCodes
Exit codes.
Definition TOPPBase.h:131
@ INPUT_FILE_EMPTY
Definition TOPPBase.h:136
@ INPUT_FILE_CORRUPT
Definition TOPPBase.h:135
@ ILLEGAL_PARAMETERS
Definition TOPPBase.h:138
@ MISSING_PARAMETERS
Definition TOPPBase.h:139
@ EXTERNAL_PROGRAM_ERROR
Definition TOPPBase.h:141
@ INCOMPATIBLE_INPUT_DATA
Definition TOPPBase.h:143
@ UNKNOWN_ERROR
Definition TOPPBase.h:140
@ EXECUTION_OK
Definition TOPPBase.h:132
@ INTERNAL_ERROR
Definition TOPPBase.h:144
@ INPUT_FILE_NOT_FOUND
Definition TOPPBase.h:133
@ INPUT_FILE_NOT_READABLE
Definition TOPPBase.h:134
@ CANNOT_WRITE_OUTPUT_FILE
Definition TOPPBase.h:137
@ PARSE_ERROR
Definition TOPPBase.h:142
@ UNEXPECTED_RESULT
Definition TOPPBase.h:145
virtual ExitCodes main_(int argc, const char **argv)=0
The actual "main" method. main_() is invoked by main().
bool parseRange_(const std::string &text, Int &low, Int &high) const
Parses a range string ([a]:[b]) into two variables (integers)
void registerIntList_(const std::string &name, const std::string &argument, const IntList &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a list of integers option.
void writeLogError_(const std::string &text) const
Writes a string to the log file and to OPENMS_LOG_ERROR.
bool parseRange_(const std::string &text, double &low, double &high) const
Parses a range string ([a]:[b]) into two variables (doubles)
Int getParamAsInt_(const std::string &key, Int default_value=0) const
Return the value of parameter key as an integer or default_value if this value is not set.
void registerDoubleOption_(const std::string &name, const std::string &argument, double default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a double option.
void checkIfIniParametersAreApplicable_(const Param &ini_params)
Checks if the parameters of the provided ini file are applicable to this tool.
void setMinFloat_(const std::string &name, double min)
Sets the minimum value for the floating point parameter(can be a list of floating points,...
Param getToolUserDefaults_(const std::string &tool_name) const
Returns the user defaults for the given tool, if any default parameters are stored in the users home.
virtual Param getSubsectionDefaults_(const std::string &section) const
This method should return the default parameters for subsections.
void fileParamValidityCheck_(const StringList &param_value, const std::string &param_name, const ParameterInformation &p) const
checks if files of an input file list exist
void addDataProcessing_(ConsensusMap &map, const DataProcessing &dp) const
Data processing setter for consensus maps.
Param getSubsectionDefaults_() const
Returns a single Param object containing all subsection parameters.
std::string getParamArgument_(const Param::ParamEntry &entry) const
Utility function that determines a suitable argument value for the given Param::ParamEntry.
void registerOutputFileList_(const std::string &name, const std::string &argument, const StringList &default_value, const std::string &description, bool required=true, bool advanced=false)
Registers a list of output files option.
std::string verboseVersion_
Version string including additional revision/date time information. Note: This differs from version_ ...
Definition TOPPBase.h:376
IntList getParamAsIntList_(const std::string &key, const IntList &default_value) const
Return the value of parameter key as a IntList or default_value if this value is not set.
void registerFullParam_(const Param &param)
Register command line parameters for all entries in a Param object.
std::string const tool_name_
Tool name. This is assigned once and for all in the constructor.
Definition TOPPBase.h:201
std::string getDocumentationURL() const
Returns a link to the documentation of the tool (accessible on our servers and only after inclusion i...
Param param_common_
Parameters from common section without tool name.
Definition TOPPBase.h:228
StringList getParamAsStringList_(const std::string &key, const StringList &default_value) const
Return the value of parameter key as a StringList or default_value if this value is not set.
ParameterInformation paramEntryToParameterInformation_(const Param::ParamEntry &entry, const std::string &argument="", const std::string &full_name="") const
Transforms a ParamEntry object to command line parameter (ParameterInformation).
int Int
Signed integer type.
Definition Types.h:72
unsigned int UInt
Unsigned integer type.
Definition Types.h:64
std::vector< Int > IntList
Vector of signed integers.
Definition ListUtils.h:29
std::vector< double > DoubleList
Vector of double precision real types.
Definition ListUtils.h:36
std::vector< std::string > StringList
Vector of String.
Definition ListUtils.h:44
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
Stores Citations for individual TOPP tools.
Definition TOPPBase.h:46
std::string toString() const
mangle members to string
Definition TOPPBase.h:53
std::string when_where
suggested format: journal. year; volume, issue: pages
Definition TOPPBase.h:49
std::string authors
list of authors in AMA style, i.e. "surname initials", ...
Definition TOPPBase.h:47
std::string title
title of article
Definition TOPPBase.h:48
std::string doi
plain DOI (no urls), e.g. 10.1021/pr100177k
Definition TOPPBase.h:50
Parameter entry used to store the actual information inside of a Param entry.
Definition Param.h:51
Struct that captures all information of a command line parameter.
Definition ParameterInformation.h:22