CMS 3D CMS Logo

DDTIDRingAlgo.h
Go to the documentation of this file.
1 #ifndef DD_TIDRingAlgo_h
2 #define DD_TIDRingAlgo_h
3 
4 #include <map>
5 #include <string>
6 #include <vector>
9 
10 class DDTIDRingAlgo : public DDAlgorithm {
11 
12 public:
13  //Constructor and Destructor
14  DDTIDRingAlgo();
15  ~DDTIDRingAlgo() override;
16 
17  void initialize(const DDNumericArguments & nArgs,
18  const DDVectorArguments & vArgs,
19  const DDMapArguments & mArgs,
20  const DDStringArguments & sArgs,
21  const DDStringVectorArguments & vsArgs) override;
22 
23  void execute(DDCompactView& cpv) override;
24 
25 private:
26 
27  std::string idNameSpace; //Namespace of this & ALL subparts
28  std::vector<std::string> moduleName; //Name of the module
29  std::string iccName; //Name of the ICC
30 
31  int number; //Number of copies
32  double startAngle; //Phi offset
33  double rModule; //Location of module in R
34  std::vector<double> zModule; // in Z
35  double rICC; //Location of ICC in R
36  double sICC; //Shift of ICC per to R
37  std::vector<double> zICC; // in Z
38 };
39 
40 #endif
double startAngle
Definition: DDTIDRingAlgo.h:32
std::vector< double > zICC
Definition: DDTIDRingAlgo.h:37
void execute(DDCompactView &cpv) override
std::string idNameSpace
Definition: DDTIDRingAlgo.h:27
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:83
std::vector< std::string > moduleName
Definition: DDTIDRingAlgo.h:28
~DDTIDRingAlgo() override
std::string iccName
Definition: DDTIDRingAlgo.h:29
std::vector< double > zModule
Definition: DDTIDRingAlgo.h:34
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override