CMS 3D CMS Logo

HGCalGeomParameters.h
Go to the documentation of this file.
1 #ifndef HGCalCommonData_HGCalGeomParameters_h
2 #define HGCalCommonData_HGCalGeomParameters_h
3 
15 #include <string>
16 #include <utility>
17 #include <vector>
18 #include <iostream>
19 
23 
24 class DDCompactView;
25 class DDFilteredView;
26 class HGCalParameters;
27 
29 
30 public:
31 
35  const std::string&, const DDCompactView*,
36  const std::string&, const std::string&,
40  const DDCompactView*, const std::string&,
41  const std::string&);
46  void loadCellParsHexagon(const DDCompactView* cpv, HGCalParameters& php);
48 
49 private:
50 
51  struct layerParameters {
52  double rmin, rmax, zpos;
53  layerParameters(double rin=0, double rout=0,
54  double zp=0) : rmin(rin), rmax(rout), zpos(zp) {}
55  };
56  struct cellParameters {
57  bool half;
58  int wafer;
60  cellParameters(bool h=false, int w=0,
61  GlobalPoint p=GlobalPoint(0,0,0)) : half(h), wafer(w),
62  xyz(std::move(p)) {}
63  };
64 
65  std::vector<double> getDDDArray(const std::string&, const DDsvalues_type&,
66  const int);
67  std::pair<double,double> cellPosition(const std::vector<cellParameters>& wafers,
68  std::vector<cellParameters>::const_iterator& itrf,
69  int wafer, double xx, double yy);
70 
71  const double sqrt3_;
72  double waferSize_;
73 };
74 
75 #endif
const double w
Definition: UKUtility.cc:23
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
cellParameters(bool h=false, int w=0, GlobalPoint p=GlobalPoint(0, 0, 0))
void loadSpecParsHexagon(const DDFilteredView &, HGCalParameters &, const DDCompactView *, const std::string &, const std::string &)
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:80
void loadSpecParsHexagon8(const DDFilteredView &, HGCalParameters &)
void loadCellTrapezoid(HGCalParameters &php)
std::pair< double, double > cellPosition(const std::vector< cellParameters > &wafers, std::vector< cellParameters >::const_iterator &itrf, int wafer, double xx, double yy)
layerParameters(double rin=0, double rout=0, double zp=0)
void loadCellParsHexagon(const DDCompactView *cpv, HGCalParameters &php)
void loadSpecParsTrapezoid(const DDFilteredView &, HGCalParameters &)
void loadGeometryHexagon8(const DDFilteredView &, HGCalParameters &, int)
std::vector< double > getDDDArray(const std::string &, const DDsvalues_type &, const int)
void loadWaferHexagon(HGCalParameters &php)
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
Definition: DDsvalues.h:12
def move(src, dest)
Definition: eostools.py:511
void loadWaferHexagon8(HGCalParameters &php)
void loadGeometryHexagon(const DDFilteredView &, HGCalParameters &, const std::string &, const DDCompactView *, const std::string &, const std::string &, HGCalGeometryMode::WaferMode)