CMS 3D CMS Logo

DDEcalPreshowerAlgoTB.h
Go to the documentation of this file.
1 #ifndef DDEcalPreshowerAlgoTB_h
2 #define DDEcalPreshowerAlgoTB_h
3 
4 #include <vector>
5 #include <string>
6 
8 
9 class DDEcalPreshowerAlgoTB : public DDAlgorithm {
10 public:
12  void initialize(const DDNumericArguments& nArgs,
13  const DDVectorArguments& vArgs,
14  const DDMapArguments& mArgs,
15  const DDStringArguments& sArgs,
16  const DDStringVectorArguments& vsArgs) override;
17  void execute(DDCompactView& pos) override;
18 
19 private:
20  std::string getMaterial(unsigned int i) const { return materials_[i]; }
21  void doLayers(DDCompactView& pos);
22  void doWedges(DDCompactView& pos);
23  void doSens(DDCompactView& pos);
24 
25  std::vector<double> quadMin_, quadMax_;
26  int nmat_; // number of preshower layers
27  double thickness_; // overall thickness of the preshower envelope
29  std::vector<std::string> materials_; // materials of the presh-layers
30  std::vector<double> thickLayers_;
31  std::vector<double> rminVec;
32  std::vector<double> rmaxVec;
33  std::vector<double> micromodulesx;
34  std::vector<double> micromodulesy;
36  std::string idNameSpace; //Namespace of this and ALL sub-parts
40  int go;
41 };
42 
43 #endif // DDEcalPreshowerAlgoTB_h
void doSens(DDCompactView &pos)
std::vector< double > quadMax_
std::vector< std::string > materials_
std::vector< double > micromodulesy
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
std::vector< double > rminVec
std::string getMaterial(unsigned int i) const
std::vector< double > rmaxVec
void doLayers(DDCompactView &pos)
std::vector< double > thickLayers_
std::vector< double > quadMin_
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override
void doWedges(DDCompactView &pos)
std::vector< double > micromodulesx
void execute(DDCompactView &pos) override