cepgen
is hosted by
Hepforge
,
IPPP Durham
CepGen
1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches
NamedModule.h
Go to the documentation of this file.
1
/*
2
* CepGen: a central exclusive processes event generator
3
* Copyright (C) 2021-2024 Laurent Forthomme
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef CepGen_Modules_NamedModule_h
20
#define CepGen_Modules_NamedModule_h
21
22
#include "
CepGen/Core/SteeredObject.h
"
23
24
namespace
cepgen
{
27
template
<
typename
T>
28
class
NamedModule
:
public
SteeredObject
<T> {
29
public
:
31
explicit
NamedModule
(
const
ParametersList
& params)
32
:
SteeredObject
<T>(params),
name_
(
SteeredObject
<T>::
steerName
()) {}
33
virtual
~NamedModule
() =
default
;
34
36
static
ParametersDescription
description
() {
37
auto
desc =
ParametersDescription
();
38
desc.setDescription(
"Named steerable module"
);
39
return
desc;
40
}
41
42
const
std::string&
name
()
const
{
return
name_
; }
43
44
protected
:
45
const
std::string
name_
;
46
};
47
}
// namespace cepgen
48
49
#endif
SteeredObject.h
cepgen::NamedModule
Base runtime module object.
Definition
NamedModule.h:28
cepgen::NamedModule::NamedModule
NamedModule(const ParametersList ¶ms)
Build a module from its steering parameters.
Definition
NamedModule.h:31
cepgen::NamedModule::name
const std::string & name() const
Module unique indexing name.
Definition
NamedModule.h:42
cepgen::NamedModule::name_
const std::string name_
Module unique indexing name.
Definition
NamedModule.h:45
cepgen::NamedModule::description
static ParametersDescription description()
Describe all steering parameters for this module.
Definition
NamedModule.h:36
cepgen::NamedModule::~NamedModule
virtual ~NamedModule()=default
cepgen::ParametersDescription
A description object for parameters collection.
Definition
ParametersDescription.h:26
cepgen::ParametersList
Definition
ParametersList.h:52
cepgen::Steerable::steerName
std::string steerName() const
Retrieve module name from parameters.
Definition
Steerable.h:48
cepgen::SteeredObject
Base user-steerable object.
Definition
SteeredObject.h:41
cepgen
Common namespace for this Monte Carlo generator.
Definition
CommandLineHandler.cpp:36
CepGen
Modules
NamedModule.h
Generated on Mon Jul 29 2024 for CepGen by
1.9.7