41 #include <OpenMS/OpenMSConfig.h> 49 template <
class Key,
class T>
91 bool isValid(
String& message)
const;
224 const std::vector<TraceInfo>& getTrace()
const;
232 std::vector<const Param::ParamNode*>
stack_;
292 bool exists(
const String& key)
const;
342 bool hasTag(
const String& key,
const String& tag)
const;
356 void clearTags(
const String& key);
378 void setSectionDescription(
const String& key,
const String& description);
385 const String& getSectionDescription(
const String& key)
const;
392 void addSection(
const String& key,
const String& description);
409 void insert(
const String& prefix,
const Param& param);
420 void remove(
const String& key);
430 void removeAll(
const String& prefix);
439 Param copy(
const String& prefix,
bool remove_prefix =
false)
const;
446 bool update(
const Param& p_outdated,
const bool add_unknown =
false);
476 bool update(
const Param& p_outdated,
bool verbose,
bool add_unknown,
bool fail_on_invalid_values,
bool fail_on_unknown_parameters,
Logger::LogStream& stream);
483 void merge(
const Param& toMerge);
499 void setDefaults(
const Param& defaults,
const String& prefix =
"",
bool showMessage =
false);
520 void checkDefaults(
const String& name,
const Param& defaults,
const String& prefix =
"")
const;
533 void setValidStrings(
const String& key,
const std::vector<String>& strings);
542 void setMinInt(
const String& key,
Int min);
551 void setMaxInt(
const String& key,
Int max);
560 void setMinFloat(
const String& key,
double min);
569 void setMaxFloat(
const String& key,
double max);
592 void parseCommandLine(
const int argc,
const char** argv,
const String& prefix =
"");
627 OPENMS_DLLAPI std::ostream&
operator<<(std::ostream& os,
const Param& param);
DataValue value
Value associated with the entry.
Definition: Param.h:100
A more convenient string class.
Definition: String.h:57
std::vector< ParamNode > nodes
Subnodes.
Definition: Param.h:175
std::vector< ParamEntry >::iterator EntryIterator
Iterator for entries.
Definition: Param.h:119
String description
Description of the node.
Definition: Param.h:171
const Param::ParamNode * root_
Pointer to the root node.
Definition: Param.h:228
Parameter entry used to store the actual information inside of a Param entry.
Definition: Param.h:79
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
std::vector< const Param::ParamNode * > stack_
Pointers to the ParamNodes we are in.
Definition: Param.h:232
Int current_
Index of the current ParamEntry (-1 means invalid)
Definition: Param.h:230
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
double max_float
Default: std::numeric_limits<double>::max()
Definition: Param.h:106
Log Stream Class.
Definition: LogStream.h:302
std::set< String > tags
Tags list, used e.g. for advanced parameter tag.
Definition: Param.h:102
Int min_int
Default: - std::numeric_limits<Int>::max()
Definition: Param.h:107
TraceInfo(const String &n, const String &d, bool o)
Constructor with name, description, and open flag.
Definition: Param.h:188
Class to hold strings, numeric values, lists of strings and lists of numeric values.
Definition: DataValue.h:56
String name
Name of the node.
Definition: Param.h:169
String description
description of the node
Definition: Param.h:198
std::vector< ParamEntry >::const_iterator ConstEntryIterator
Iterator for entries.
Definition: Param.h:123
std::vector< ParamNode >::iterator NodeIterator
Iterator for child nodes.
Definition: Param.h:117
Int max_int
Default: std::numeric_limits<Int>::max()
Definition: Param.h:108
String name
Name of the entry.
Definition: Param.h:96
String name
name of the node
Definition: Param.h:196
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
DPosition< D, TCoordinateType > operator*(DPosition< D, TCoordinateType > position, typename DPosition< D, TCoordinateType >::CoordinateType scalar)
Scalar multiplication (a bit inefficient)
Definition: DPosition.h:420
Struct that captures information on entered / left nodes for ParamIterator.
Definition: Param.h:185
bool opened
If it was opened (true) or closed (false)
Definition: Param.h:200
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:73
String description
Description of the entry.
Definition: Param.h:98
Management and storage of parameters / INI files.
Definition: Param.h:74
std::vector< ParamNode >::const_iterator ConstNodeIterator
Iterator for child nodes.
Definition: Param.h:121
bool operator!=(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:824
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
double min_float
Default: - std::numeric_limits<double>::max()
Definition: Param.h:105
std::vector< String > valid_strings
Default: empty.
Definition: Param.h:109
Forward const iterator for the Param class.
Definition: Param.h:181
std::vector< TraceInfo > trace_
Node traversal data during last ++ operation.
Definition: Param.h:234
Node inside a Param object which is used to build the internal tree.
Definition: Param.h:114
std::vector< ParamEntry > entries
Entries (leafs) in the node.
Definition: Param.h:173
int Int
Signed integer type.
Definition: Types.h:102
Map class based on the STL map (containing several convenience functions)
Definition: Map.h:50
int verbose
Verbosity level ( "-v" is 1 and "-V" is 2 )
Param::ParamNode root_
Invisible root node that stores all the data.
Definition: Param.h:623