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 
11 public:
13  void initialize(const DDNumericArguments & nArgs,
14  const DDVectorArguments & vArgs,
15  const DDMapArguments & mArgs,
16  const DDStringArguments & sArgs,
17  const DDStringVectorArguments & vsArgs) override;
18  void execute(DDCompactView& pos) override;
19 
20 private:
21  std::string getMaterial(unsigned int i) const {return materials_[i];}
22  void doLayers(DDCompactView& pos);
23  void doWedges(DDCompactView& pos);
24  void doSens(DDCompactView& pos);
25 
26  std::vector<double> quadMin_, quadMax_;
27  int nmat_; // number of preshower layers
28  double thickness_; // overall thickness of the preshower envelope
30  std::vector<std::string> materials_; // materials of the presh-layers
31  std::vector<double> thickLayers_;
32  std::vector<double> rminVec;
33  std::vector<double> rmaxVec;
34  std::vector<double> micromodulesx;
35  std::vector<double> micromodulesy;
37  std::string idNameSpace; //Namespace of this and ALL sub-parts
39  int go;
40 };
41 
42 #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:83
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