CMS 3D CMS Logo

DDTECAxialCableAlgo.h
Go to the documentation of this file.
1 #ifndef DD_TECAxialCableAlgo_h
2 #define DD_TECAxialCableAlgo_h
3 
4 #include <map>
5 #include <string>
6 #include <vector>
9 
10 class DDTECAxialCableAlgo : public DDAlgorithm {
11 
12 public:
13  //Constructor and Destructor
15  ~DDTECAxialCableAlgo() 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  int n; //Number of copies
28  double rangeAngle; //Range in angle
29  double zStart; //Start z of the Service volume
30  double zEnd; //End z ........
31  double rMin; //Minimum radius ........
32  double rMax; //Maximum radius ........
33  double width; //Angular width
34  double thickR; //Thickness (along R)
35  double thickZ; //Thickness (along Z)
36  double dZ; //Offset along Z from the central point
37  std::vector<double> startAngle; //Start angle
38  std::vector<double> zPos; //Starting Z of the cables
39  double delta; //Increment in phi
40 
41  std::string idNameSpace; //Namespace of this and ALL sub-parts
42  std::string childName; //Child name
43  std::string matName; //Material name
44 };
45 
46 #endif
std::vector< double > zPos
std::vector< double > startAngle
type of data representation of DDCompactView
Definition: DDCompactView.h:90
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override
void execute(DDCompactView &cpv) override