CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions
AlgoInit.cc File Reference
#include "DetectorDescription/Algorithm/src/AlgoInit.h"
#include "DetectorDescription/Core/interface/DDAlgo.h"
#include "DetectorDescription/ExprAlgo/interface/AlgoPos.h"
#include "DetectorDescription/Algorithm/src/global_linear.h"
#include "DetectorDescription/Algorithm/src/global_angular.h"
#include "DetectorDescription/Algorithm/src/global_simpleAngular.h"

Go to the source code of this file.

Functions

void AlgoInit ()
 

Function Documentation

void AlgoInit ( )

Definition at line 13 of file AlgoInit.cc.

References DDalgo().

Referenced by DDLParser::DDLParser(), output(), regressionTest_first(), and testParser().

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 }
class for algorithmic positioning, represents an algorithm
Definition: AlgoPos.h:27
DDName is used to identify DDD entities uniquely.
Definition: DDName.h:18
DDAlgo DDalgo(const DDName &, AlgoPos *)
Definition: DDAlgo.cc:114