Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
DetectorDescription
Algorithm
src
AlgoInit.cc
Go to the documentation of this file.
1
#include "
DetectorDescription/Algorithm/src/AlgoInit.h
"
2
#include "
DetectorDescription/Core/interface/DDAlgo.h
"
3
#include "
DetectorDescription/ExprAlgo/interface/AlgoPos.h
"
4
5
// include all from XML generated algorithms
6
7
#include "
DetectorDescription/Algorithm/src/global_linear.h
"
8
#include "
DetectorDescription/Algorithm/src/global_angular.h
"
9
#include "
DetectorDescription/Algorithm/src/global_simpleAngular.h
"
10
11
// add a line for each generated algorithm to register the
12
// algorithm with DDCore
13
void
AlgoInit
()
14
{
15
static
bool
isInit =
false
;
16
if
(isInit)
return
;
17
isInit =
true
;
18
19
// placeholder pointer
20
AlgoPos
*
algo
= 0;
21
22
// generated:
23
// for each <Algorithm> in each ADL-instance the code generator has to provide code
24
// similar to that below ...
25
26
// create the representation of the algorithm
27
28
29
algo =
new
AlgoPos
(
new
global_linear_Check
);
30
31
// create the implementations of the algorithm & register them with the representation
32
33
new
global_linear_0
(algo,
"base in the input parameters"
);
34
new
global_linear_1
(algo,
"without base in input parameters"
);
35
36
// register the representation at DDCore
37
DDalgo
(
DDName
(
"linear"
,
"global"
), algo);
38
39
algo =
new
AlgoPos
(
new
global_angular_Check
);
40
41
// create the implementations of the algorithm & register them with the representation
42
43
new
global_angular_0
(algo,
"divrange"
);
44
45
// register the representation at DDCore
46
DDalgo
(
DDName
(
"angular"
,
"global"
), algo);
47
48
algo =
new
AlgoPos
(
new
global_simpleAngular_Check
);
49
50
// create the implementations of the algorithm & register them with the representation
51
52
new
global_simpleAngular_0
(algo,
"number no delta"
);
53
new
global_simpleAngular_1
(algo,
"delta no number"
);
54
new
global_simpleAngular_2
(algo,
"delta AND number"
);
55
56
// register the representation at DDCore
57
58
DDalgo
(
DDName
(
"simpleAngular"
,
"global"
), algo);
59
}
60
61
global_simpleAngular.h
AlgoPos
class for algorithmic positioning, represents an algorithm
Definition:
AlgoPos.h:27
global_angular_0
Definition:
global_angular.h:36
global_linear_Check
Definition:
global_linear.h:99
DDName
DDName is used to identify DDD entities uniquely.
Definition:
DDName.h:18
global_linear_0
Definition:
global_linear.h:44
DDalgo
DDAlgo DDalgo(const DDName &, AlgoPos *)
Definition:
DDAlgo.cc:114
global_linear.h
global_simpleAngular_2
Definition:
global_simpleAngular.h:99
AlgoInit
void AlgoInit()
Definition:
AlgoInit.cc:13
global_simpleAngular_Check
Definition:
global_simpleAngular.h:134
global_angular_Check
Definition:
global_angular.h:78
DDAlgo.h
AlgoPos.h
global_simpleAngular_1
Definition:
global_simpleAngular.h:78
global_angular.h
AlgoInit.h
global_simpleAngular_0
Definition:
global_simpleAngular.h:57
algo
LimitAlgo * algo
Definition:
Combine.cc:60
global_linear_1
Definition:
global_linear.h:66
Generated for CMSSW Reference Manual by
1.8.5