Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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
global_linear_1
Definition:
global_linear.h:66
Generated for CMSSW Reference Manual by
1.8.5