cepgen
is hosted by
Hepforge
,
IPPP Durham
CepGen
1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches
DocumentationGenerator.h
Go to the documentation of this file.
1
/*
2
* CepGen: a central exclusive processes event generator
3
* Copyright (C) 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_Utils_DocumentationGenerator_h
20
#define CepGen_Utils_DocumentationGenerator_h
21
22
#include "
CepGen/Modules/ModuleFactory.h
"
23
24
namespace
cepgen
{
25
namespace
utils {
29
class
DocumentationGenerator
:
public
NamedModule
<DocumentationGenerator> {
30
public
:
31
explicit
DocumentationGenerator
(
const
ParametersList
&);
32
virtual
~DocumentationGenerator
() =
default
;
33
34
static
ParametersDescription
description
();
35
36
virtual
std::string
describe
() = 0;
37
38
protected
:
39
struct
category_t
{
40
std::string
name
,
title
,
description
;
41
std::map<std::string, ParametersDescription>
modules
{};
42
std::map<std::string, int>
modules_indices
{};
43
};
44
std::vector<std::pair<std::string, category_t> >
categories_
;
45
};
46
}
// namespace utils
47
}
// namespace cepgen
48
49
#endif
ModuleFactory.h
cepgen::NamedModule
Base runtime module object.
Definition
NamedModule.h:28
cepgen::ParametersDescription
A description object for parameters collection.
Definition
ParametersDescription.h:26
cepgen::ParametersList
Definition
ParametersList.h:52
cepgen::utils::DocumentationGenerator
Documentation generator object.
Definition
DocumentationGenerator.h:29
cepgen::utils::DocumentationGenerator::describe
virtual std::string describe()=0
cepgen::utils::DocumentationGenerator::category_t::description
std::string description
Definition
DocumentationGenerator.h:40
cepgen::utils::DocumentationGenerator::category_t::modules
std::map< std::string, ParametersDescription > modules
Definition
DocumentationGenerator.h:41
cepgen::utils::DocumentationGenerator::category_t::name
std::string name
Definition
DocumentationGenerator.h:40
cepgen::utils::DocumentationGenerator::category_t::title
std::string title
Definition
DocumentationGenerator.h:40
cepgen::utils::DocumentationGenerator::description
static ParametersDescription description()
Definition
DocumentationGenerator.cpp:90
cepgen::utils::DocumentationGenerator::~DocumentationGenerator
virtual ~DocumentationGenerator()=default
cepgen::utils::DocumentationGenerator::categories_
std::vector< std::pair< std::string, category_t > > categories_
Definition
DocumentationGenerator.h:44
cepgen::utils::DocumentationGenerator::category_t::modules_indices
std::map< std::string, int > modules_indices
Definition
DocumentationGenerator.h:42
cepgen::utils::DocumentationGenerator::category_t
Definition
DocumentationGenerator.h:39
cepgen
Common namespace for this Monte Carlo generator.
Definition
CommandLineHandler.cpp:36
CepGen
Utils
DocumentationGenerator.h
Generated on Mon Jul 29 2024 for CepGen by
1.9.7