cepgen is hosted by Hepforge, IPPP Durham
CepGen 1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches
ParametersList.h File Reference
#include <map>
#include <string>
#include <unordered_map>
#include "CepGen/Utils/Limits.h"
+ Include dependency graph for ParametersList.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ParametersList
 

Namespaces

namespace  cepgen
 Common namespace for this Monte Carlo generator.
 

Macros

#define REGISTER_CONTENT_TYPE
 Looper over the list of parameters containers handled by the ParametersList object.
 
#define __TYPE_ENUM(type, map, name)
 Implement all setters and getters for a given type.
 

Variables

const char *const MODULE_NAME = "mod_name"
 Indexing key for the module name Parameters container.
 

Macro Definition Documentation

◆ __TYPE_ENUM

#define __TYPE_ENUM (   type,
  map,
  name 
)
Value:
template <> \
bool ParametersList::has<type>(const std::string&) const; \
template <> \
type ParametersList::get<type>(const std::string&, const type&) const; \
template <> \
type& ParametersList::operator[]<type>(const std::string&); \
template <> \
ParametersList& ParametersList::set<type>(const std::string&, const type&); \
template <> \
std::vector<std::string> ParametersList::keysOf<type>() const; \
template <> \
size_t ParametersList::erase<type>(const std::string&);

Definition at line 167 of file ParametersList.h.

◆ REGISTER_CONTENT_TYPE

#define REGISTER_CONTENT_TYPE
Value:
__TYPE_ENUM(bool, bool_values_, "bool") \
__TYPE_ENUM(int, int_values_, "int") \
__TYPE_ENUM(unsigned long long, ulong_values_, "ulong") \
__TYPE_ENUM(double, dbl_values_, "float") \
__TYPE_ENUM(std::string, str_values_, "str") \
__TYPE_ENUM(Limits, lim_values_, "Limits") \
__TYPE_ENUM(ParametersList, param_values_, "Params") \
__TYPE_ENUM(std::vector<int>, vec_int_values_, "vint") \
__TYPE_ENUM(std::vector<double>, vec_dbl_values_, "vfloat") \
__TYPE_ENUM(std::vector<std::string>, vec_str_values_, "vstr") \
__TYPE_ENUM(std::vector<Limits>, vec_lim_values_, "VLimits") \
__TYPE_ENUM(std::vector<ParametersList>, vec_param_values_, "VParams") \
__TYPE_ENUM(std::vector<std::vector<double> >, vec_vec_dbl_values_, "vvfloat")
#define __TYPE_ENUM(type, map, name)
Implement all setters and getters for a given type.
Note
This can be edited to add an extra handled collection to this steering utility e.g. add __TYPE_ENUM(typename, // any C/C++ type name map_variable, // ParametersList object private attribute "human-readable name of parameter") to the following list.

Definition at line 34 of file ParametersList.h.