CMS 3D CMS Logo

HcalLayerDepthMap.h
Go to the documentation of this file.
1 #ifndef Geometry_HcalTowerAlgo_HcalLayerDepthMap_h
2 #define Geometry_HcalTowerAlgo_HcalLayerDepthMap_h
3 
12 #include <iostream>
13 #include <iomanip>
14 #include <map>
15 #include <string>
16 #include <vector>
17 
19 public:
22  void initialize(const int subdet,
23  const int ietaMax,
24  const int dep16C,
25  const int dep29C,
26  const double wtl0C,
27  std::vector<int> const& iphi,
28  std::vector<int> const& ieta,
29  std::vector<int> const& layer,
30  std::vector<int> const& depth);
31  int getSubdet() const { return subdet_; }
32  int getDepth(const int subdet, const int ieta, const int iphi, const int zside, const int layer) const;
33  int getDepth16(const int subdet, const int iphi, const int zside) const;
34  int getDepthMin(const int subdet, const int iphi, const int zside) const;
35  int getDepthMax(const int subdet, const int iphi, const int zside) const;
36  int getDepthMax(const int subdet, const int ieta, const int iphi, const int zside) const;
37  std::pair<int, int> getDepths(const int eta) const;
38  int getLayerFront(const int subdet, const int ieta, const int iphi, const int zside, const int depth) const;
39  int getLayerBack(const int subdet, const int ieta, const int iphi, const int zside, const int depth) const;
40  void getLayerDepth(
41  const int subdet, const int ieta, const int iphi, const int zside, std::map<int, int>& layers) const;
42  void getLayerDepth(const int ieta, std::map<int, int>& layers) const;
43  double getLayer0Wt(const int subdet, const int iphi, const int zside) const;
44  int getMaxDepthLastHE(const int subdet, const int iphi, const int zside) const;
45  const std::vector<int>& getPhis() const { return iphi_; }
46  bool isValid(const int det, const int phi, const int zside) const;
47  int validDet(std::vector<int>& phis) const;
48  std::pair<int, int> validEta() const { return std::pair<int, int>(ietaMin_, ietaMax_); }
49 
50 private:
51  static const int maxLayers_ = 18;
52  int subdet_; // Subdet (HB=1, HE=2)
53  int ietaMin_; // Minimum eta value
54  int ietaMax_; // Maximum eta value
55  int depthMin_; // Minimum depth
56  int depthMax_; // Maximum depth
57  int dep16C_; // Max/Min layer # for HB/HE (ieta=16)
58  int dep29C_; // Max Depth of the last HE
59  double wtl0C_; // Layer 0 weight
60  std::vector<int> iphi_; // phi*zside values
61  std::map<std::pair<int, int>, int> layer2Depth_; // Layer to depth map
62  std::map<std::pair<int, int>, int> depth2LayerF_; // Depth to front layer map
63  std::map<std::pair<int, int>, int> depth2LayerB_; // Depth to back layer map
64  std::map<int, std::pair<int, int>> depthsEta_; // Depth range for each eta
65 };
66 
67 #endif
HcalLayerDepthMap::getLayerDepth
void getLayerDepth(const int subdet, const int ieta, const int iphi, const int zside, std::map< int, int > &layers) const
Definition: HcalLayerDepthMap.cc:198
HcalLayerDepthMap::getLayer0Wt
double getLayer0Wt(const int subdet, const int iphi, const int zside) const
Definition: HcalLayerDepthMap.cc:242
HcalLayerDepthMap::validEta
std::pair< int, int > validEta() const
Definition: HcalLayerDepthMap.h:48
HcalLayerDepthMap::~HcalLayerDepthMap
~HcalLayerDepthMap()
Definition: HcalLayerDepthMap.cc:18
ecaldqm::zside
int zside(DetId const &)
Definition: EcalDQMCommonUtils.cc:189
HcalLayerDepthMap::getLayerFront
int getLayerFront(const int subdet, const int ieta, const int iphi, const int zside, const int depth) const
Definition: HcalLayerDepthMap.cc:168
HcalLayerDepthMap::isValid
bool isValid(const int det, const int phi, const int zside) const
Definition: HcalLayerDepthMap.cc:250
HcalLayerDepthMap::getDepth
int getDepth(const int subdet, const int ieta, const int iphi, const int zside, const int layer) const
Definition: HcalLayerDepthMap.cc:111
HcalLayerDepthMap::ietaMin_
int ietaMin_
Definition: HcalLayerDepthMap.h:53
HcalLayerDepthMap
Definition: HcalLayerDepthMap.h:18
HcalLayerDepthMap::initialize
void initialize(const int subdet, const int ietaMax, const int dep16C, const int dep29C, const double wtl0C, std::vector< int > const &iphi, std::vector< int > const &ieta, std::vector< int > const &layer, std::vector< int > const &depth)
Definition: HcalLayerDepthMap.cc:20
HcalLayerDepthMap::getMaxDepthLastHE
int getMaxDepthLastHE(const int subdet, const int iphi, const int zside) const
Definition: HcalLayerDepthMap.cc:234
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
HcalLayerDepthMap::layer2Depth_
std::map< std::pair< int, int >, int > layer2Depth_
Definition: HcalLayerDepthMap.h:61
HcalLayerDepthMap::getPhis
const std::vector< int > & getPhis() const
Definition: HcalLayerDepthMap.h:45
PVValHelper::eta
Definition: PVValidationHelpers.h:70
HcalLayerDepthMap::depth2LayerB_
std::map< std::pair< int, int >, int > depth2LayerB_
Definition: HcalLayerDepthMap.h:63
HcalLayerDepthMap::depthMin_
int depthMin_
Definition: HcalLayerDepthMap.h:55
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
HcalLayerDepthMap::getDepths
std::pair< int, int > getDepths(const int eta) const
Definition: HcalLayerDepthMap.cc:160
HcalLayerDepthMap::dep16C_
int dep16C_
Definition: HcalLayerDepthMap.h:57
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
HcalLayerDepthMap::depth2LayerF_
std::map< std::pair< int, int >, int > depth2LayerF_
Definition: HcalLayerDepthMap.h:62
HcalLayerDepthMap::getLayerBack
int getLayerBack(const int subdet, const int ieta, const int iphi, const int zside, const int depth) const
Definition: HcalLayerDepthMap.cc:183
HcalLayerDepthMap::getSubdet
int getSubdet() const
Definition: HcalLayerDepthMap.h:31
HcalLayerDepthMap::ietaMax_
int ietaMax_
Definition: HcalLayerDepthMap.h:54
HcalLayerDepthMap::depthsEta_
std::map< int, std::pair< int, int > > depthsEta_
Definition: HcalLayerDepthMap.h:64
HcalLayerDepthMap::dep29C_
int dep29C_
Definition: HcalLayerDepthMap.h:58
HcalLayerDepthMap::getDepth16
int getDepth16(const int subdet, const int iphi, const int zside) const
Definition: HcalLayerDepthMap.cc:126
DDAxes::phi
HcalLayerDepthMap::maxLayers_
static const int maxLayers_
Definition: HcalLayerDepthMap.h:51
HcalLayerDepthMap::wtl0C_
double wtl0C_
Definition: HcalLayerDepthMap.h:59
HcalLayerDepthMap::validDet
int validDet(std::vector< int > &phis) const
Definition: HcalLayerDepthMap.cc:258
HcalLayerDepthMap::subdet_
int subdet_
Definition: HcalLayerDepthMap.h:52
HcalLayerDepthMap::getDepthMin
int getDepthMin(const int subdet, const int iphi, const int zside) const
Definition: HcalLayerDepthMap.cc:136
HcalLayerDepthMap::iphi_
std::vector< int > iphi_
Definition: HcalLayerDepthMap.h:60
HcalLayerDepthMap::HcalLayerDepthMap
HcalLayerDepthMap()
Definition: HcalLayerDepthMap.cc:9
HcalLayerDepthMap::getDepthMax
int getDepthMax(const int subdet, const int iphi, const int zside) const
Definition: HcalLayerDepthMap.cc:144
hgcalTopologyTester_cfi.layers
layers
Definition: hgcalTopologyTester_cfi.py:8
HcalLayerDepthMap::depthMax_
int depthMax_
Definition: HcalLayerDepthMap.h:56