CMS 3D CMS Logo

HcalTopology.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_CALOTOPOLOGY_HCALTOPOLOGY_H
2 #define GEOMETRY_CALOTOPOLOGY_HCALTOPOLOGY_H 1
3 
4 #include <vector>
5 #include <map>
12 
27 public:
28  HcalTopology(const HcalDDDRecConstants* hcons, const bool mergePosition = false);
30  int maxDepthHB,
31  int maxDepthHE,
33 
34  HcalTopologyMode::Mode mode() const { return mode_; }
37  void exclude(const HcalDetId& id);
41  int exclude(HcalSubdetector subdet, int ieta1, int ieta2, int iphi1, int iphi2, int depth1 = 1, int depth2 = 4);
42 
43  static std::string producerTag() { return "HCAL"; }
44 
46  unsigned int detId2denseId(const DetId& id) const override;
48  DetId denseId2detId(unsigned int /*denseid*/) const override;
50  unsigned int ncells() const override;
52  int topoVersion() const override;
53 
55  bool valid(const DetId& id) const override;
57  bool validHcal(const HcalDetId& id) const;
58  bool validDetId(HcalSubdetector subdet, int ieta, int iphi, int depth) const;
59  bool validHT(const HcalTrigTowerDetId& id) const;
60  bool validCalib(const HcalCalibDetId& id) const;
62  bool validHcal(const HcalDetId& id, const unsigned int flag) const;
66  std::vector<DetId> east(const DetId& id) const override;
68  std::vector<DetId> west(const DetId& id) const override;
70  std::vector<DetId> north(const DetId& id) const override;
72  std::vector<DetId> south(const DetId& id) const override;
74  std::vector<DetId> up(const DetId& id) const override;
76  std::vector<DetId> down(const DetId& id) const override;
77 
79  int incIEta(const HcalDetId& id, HcalDetId neighbors[2]) const;
81  int decIEta(const HcalDetId& id, HcalDetId neighbors[2]) const;
83  bool incIPhi(const HcalDetId& id, HcalDetId& neighbor) const;
85  bool decIPhi(const HcalDetId& id, HcalDetId& neighbor) const;
87  bool incrementDepth(HcalDetId& id) const;
89  bool decrementDepth(HcalDetId& id) const;
90 
91  int firstHBRing() const { return firstHBRing_; }
92  int lastHBRing() const { return lastHBRing_; }
93  int firstHERing() const { return firstHERing_; }
94  int lastHERing() const { return lastHERing_; }
95  int lastHBHERing() const { return std::max(lastHBRing_, lastHERing_); }
96  int firstHFRing() const { return firstHFRing_; }
97  int lastHFRing() const { return lastHFRing_; }
98  int firstHORing() const { return firstHORing_; }
99  int lastHORing() const { return lastHORing_; }
100 
102  int firstHEQuadPhiRing() const { return firstHEQuadPhiRing_; }
103  int firstHFQuadPhiRing() const { return firstHFQuadPhiRing_; }
105  int singlePhiBins() const { return singlePhiBins_; }
106  int doublePhiBins() const { return doublePhiBins_; }
107 
109  void depthBinInformation(
110  HcalSubdetector subdet, int etaRing, int iphi, int zside, int& nDepthBins, int& startingBin) const;
111  bool mergedDepth29(HcalDetId id) const { return hcons_->mergedDepthList29(id.ieta(), id.iphi(), id.depth()); }
112  std::vector<int> mergedDepthList29(HcalDetId id) const { return hcons_->mergedDepthList29(id.ieta(), id.iphi()); }
113 
115  int nPhiBins(int etaRing) const;
116  int nPhiBins(HcalSubdetector subdet, int etaRing) const;
117 
119  int etaRing(HcalSubdetector subdet, double eta) const;
120  int phiBin(HcalSubdetector subdet, int etaRing, double phi) const;
121 
124  void getDepthSegmentation(const unsigned ring, std::vector<int>& readoutDepths, const bool flag = false) const;
125  void setDepthSegmentation(const unsigned ring, const std::vector<int>& readoutDepths, const bool flag);
129  std::pair<int, int> segmentBoundaries(const unsigned ring, const unsigned depth, const bool flag = false) const;
130  int getPhiZOne(std::vector<std::pair<int, int> >& phiz) const { return hcons_->getPhiZOne(phiz); }
131 
132  unsigned int getHBSize() const { return HBSize_; }
133  unsigned int getHESize() const { return HESize_; }
134  unsigned int getHOSize() const { return HOSize_; }
135  unsigned int getHFSize() const { return HFSize_; }
136  unsigned int getHTSize() const { return HTSize_; }
137  unsigned int getCALIBSize() const { return CALIBSize_; }
138 
139  int maxDepthHB() const { return maxDepthHB_; }
140  int maxDepthHE() const { return maxDepthHE_; }
141  int maxDepth(void) const;
142  int maxDepth(HcalSubdetector subdet) const;
143  double etaMax(HcalSubdetector subdet) const;
144  std::pair<double, double> etaRange(HcalSubdetector subdet, int ieta) const;
145 
147  unsigned int detId2denseIdHB(const DetId& id) const;
149  unsigned int detId2denseIdHE(const DetId& id) const;
151  unsigned int detId2denseIdHO(const DetId& id) const;
153  unsigned int detId2denseIdHF(const DetId& id) const;
155  unsigned int detId2denseIdHT(const DetId& id) const;
157  unsigned int detId2denseIdCALIB(const DetId& id) const;
159  HcalCalibDetId denseId2detIdCALIB(const unsigned int& id) const;
160 
161  unsigned int getNumberOfShapes() const { return numberOfShapes_; }
162  bool isBH() const { return ((hcons_ == nullptr) ? false : hcons_->isBH()); }
163 
164  const HcalDDDRecConstants* dddConstants() const { return hcons_; }
165  bool withSpecialRBXHBHE() const { return hcons_->withSpecialRBXHBHE(); }
166  HcalDetId mergedDepthDetId(const HcalDetId& id) const { return hcons_->mergedDepthDetId(id); }
167  bool getMergePositionFlag() const { return mergePosition_; }
168  void unmergeDepthDetId(const HcalDetId& id, std::vector<HcalDetId>& ids) const { hcons_->unmergeDepthDetId(id, ids); }
169  // Returns the DetId of the front Id if it is a merged RecHit in "Plan 1"
170  HcalDetId idFront(const HcalDetId& id) const { return hcons_->idFront(id); }
171  HcalDetId idBack(const HcalDetId& id) const { return hcons_->idBack(id); }
172 
173 private:
175  int incAIEta(const HcalDetId& id, HcalDetId neighbors[2]) const;
177  int decAIEta(const HcalDetId& id, HcalDetId neighbors[2]) const;
178 
180  bool validDetIdPreLS1(const HcalDetId& id) const;
181  bool validRaw(const HcalDetId& id) const;
182  unsigned int detId2denseIdPreLS1(const DetId& id) const;
183  bool isExcluded(const HcalDetId& id) const;
184 
187  std::vector<HcalDetId> exclusionList_;
189 
192 
197 
198  std::vector<HcalDDDRecConstants::HcalEtaBin> etaBinsHB_, etaBinsHE_;
200 
207 
208  unsigned int HBSize_;
209  unsigned int HESize_;
210  unsigned int HOSize_;
211  unsigned int HFSize_;
212  unsigned int HTSize_;
213  unsigned int CALIBSize_;
214  unsigned int numberOfShapes_;
215 
216  std::vector<double> etaTable, etaTableHF, dPhiTable, dPhiTableHF;
217  std::vector<double> phioff;
218  std::vector<int> unitPhi, unitPhiHF;
219 
221 
222  // index is ring;
223  typedef std::map<unsigned, std::vector<int> > SegmentationMap;
226 
227  enum {
228  kHBhalf = 1296,
229  kHEhalf = 1296,
230  kHOhalf = 1080,
231  kHFhalf = 864,
232  kHThalf = 2088,
233  kZDChalf = 11,
234  kCASTORhalf = 224,
235  kCALIBhalf = 693,
238  };
240  enum { kHBSizePreLS1 = 2 * kHBhalf };
241  enum { kHESizePreLS1 = 2 * kHEhalf };
242  enum { kHOSizePreLS1 = 2 * kHOhalf };
243  enum { kHFSizePreLS1 = 2 * kHFhalf };
244  enum { kHTSizePreLS1 = 2 * kHThalf };
245  enum { kHTSizePhase1 = 2 * kHThalfPhase1 };
246  enum { kCALIBSizePreLS1 = 2 * kCALIBhalf };
247  static constexpr int minMaxDepth_ = 4;
248  static constexpr unsigned int minPhi_ = 1, maxPhi_ = 72;
249  static constexpr unsigned int kOffCalibHB_ = 0;
250  static constexpr unsigned int nchanCalibHB_ = 3, nEtaCalibHB_ = 2;
251  static constexpr unsigned int mPhiCalibHB_ = 4, kPhiCalibHB_ = maxPhi_ / mPhiCalibHB_;
252  static constexpr int chanCalibHB_[nchanCalibHB_] = {0, 1, 2};
253  static constexpr int etaCalibHB_[nEtaCalibHB_] = {-1, 1};
254  static constexpr unsigned int kchanCalibHB_ = nchanCalibHB_ * kPhiCalibHB_;
255  static constexpr unsigned int nCalibHB_ = kchanCalibHB_ * nEtaCalibHB_;
256  static constexpr unsigned int kOffCalibHE1_ = kOffCalibHB_ + nCalibHB_;
257  static constexpr unsigned int nchanCalibHE1_ = 6, nEtaCalibHE_ = 2;
258  static constexpr unsigned int mPhiCalibHE_ = 4, kPhiCalibHE_ = maxPhi_ / mPhiCalibHE_;
259  static constexpr int chanCalibHE1_[nchanCalibHE1_] = {0, 1, 3, 4, 5, 6};
260  static constexpr int etaCalibHE_[nEtaCalibHE_] = {-1, 1};
261  static constexpr unsigned int kchanCalibHE1_ = nchanCalibHE1_ * kPhiCalibHE_;
262  static constexpr unsigned int nCalibHE1_ = kchanCalibHE1_ * nEtaCalibHE_;
263  static constexpr unsigned int kOffCalibHF1_ = kOffCalibHE1_ + nCalibHE1_;
264  static constexpr unsigned int nchanCalibHF1_ = 3, nEtaCalibHF_ = 2;
265  static constexpr unsigned int mPhiCalibHF1_ = 18, kPhiCalibHF1_ = maxPhi_ / mPhiCalibHF1_;
266  static constexpr int chanCalibHF1_[nchanCalibHF1_] = {0, 1, 8};
267  static constexpr int etaCalibHF_[nEtaCalibHF_] = {-1, 1};
268  static constexpr unsigned int kchanCalibHF1_ = nchanCalibHF1_ * kPhiCalibHF1_;
269  static constexpr unsigned int nCalibHF1_ = kchanCalibHF1_ * nEtaCalibHF_;
270  static constexpr unsigned int kOffCalibHO1_ = kOffCalibHF1_ + nCalibHF1_;
271  static constexpr unsigned int nchanCalibHO_ = 2, nEtaCalibHO_ = 5;
272  static constexpr int chanCalibHOs_ = 7;
273  static constexpr int chanCalibHO_[nchanCalibHO_] = {0, 1};
274  static constexpr int etaCalibHO_[nEtaCalibHO_] = {-2, -1, 0, 1, 2};
275  static constexpr int phiCalibHO_[nEtaCalibHO_] = {59, 47, 53, 47, 47};
276  static constexpr unsigned int mPhiCalibHO0_ = 6, mPhiCalibHO1_ = 12;
277  static constexpr unsigned int kPhiCalibHO0_ = maxPhi_ / mPhiCalibHO0_;
278  static constexpr unsigned int kPhiCalibHO1_ = maxPhi_ / mPhiCalibHO1_;
279  static constexpr unsigned int kPhiCalibHO2_ = 4 * kPhiCalibHO1_ + kPhiCalibHO0_;
280  static constexpr unsigned int nCalibHO1_ = kPhiCalibHO2_ * nchanCalibHO_;
281  static constexpr unsigned int kOffCalibHO2_ = kOffCalibHO1_ + nCalibHO1_;
282  static constexpr unsigned int nCalibHO2_ = nEtaCalibHO_;
283  static constexpr unsigned int kOffCalibHE2_ = kOffCalibHO2_ + nCalibHO2_;
284  static constexpr int chanCalibHE2_ = 2;
285  static constexpr unsigned int kchanCalibHE2_ = kPhiCalibHE_;
286  static constexpr unsigned int nCalibHE2_ = kchanCalibHE2_ * nEtaCalibHE_;
287  static constexpr unsigned int kOffCalibHF2_ = kOffCalibHE2_ + nCalibHE2_;
288  static constexpr int chanCalibHF2_ = 9, phiCalibHF2_ = 1;
289  static constexpr unsigned int kchanCalibHF2_ = 1;
290  static constexpr unsigned int nCalibHF2_ = nEtaCalibHF_;
291  static constexpr unsigned int kOffCalibHOX_ = kOffCalibHF2_ + nCalibHF2_;
292  static constexpr unsigned int nEtaCalibHOX_ = 2;
293  static constexpr int etaCalibHOX_[nEtaCalibHOX_] = {4, 15};
294  static constexpr unsigned int mPhiCalibHOX_[nEtaCalibHOX_] = {2, 1};
295  static constexpr unsigned int nPhiCalibHOX_[nEtaCalibHOX_] = {36, 72};
296  static constexpr int nCalibHOX_ = 2 * (nPhiCalibHOX_[0] + nPhiCalibHOX_[1]);
297  static constexpr int phiCalibHOX1_ = 4, phiCalibHOX2_ = 12, phiCalibHOX3_ = 6;
298  static constexpr unsigned int kOffCalibHBX_ = kOffCalibHOX_ + nCalibHOX_;
299  static constexpr unsigned int nEtaCalibHBX_ = 1, mPhiCalibHBX_ = 1;
300  static constexpr int etaCalibHBX_ = 16;
301  static constexpr unsigned int kPhiCalibHBX_ = maxPhi_ / mPhiCalibHBX_;
302  static constexpr unsigned int nCalibHBX_ = 2 * kPhiCalibHBX_ * nEtaCalibHBX_;
303  static constexpr unsigned int kOffCalibHEX_ = kOffCalibHBX_ + nCalibHBX_;
304  static constexpr unsigned int nEtaCalibHEX_ = 2, mPhiCalibHEX_ = 2;
305  static constexpr int etaCalibHEX_[nEtaCalibHEX_] = {25, 27};
306  static constexpr unsigned int kPhiCalibHEX_ = maxPhi_ / mPhiCalibHEX_;
307  static constexpr unsigned int nCalibHEX_ = 2 * kPhiCalibHEX_ * nEtaCalibHEX_;
308  static constexpr unsigned int kOffCalibHFX_ = kOffCalibHEX_ + nCalibHEX_;
309 };
310 
311 #endif
HcalTopology::kPhiCalibHBX_
static constexpr unsigned int kPhiCalibHBX_
Definition: HcalTopology.h:301
HcalDDDRecConstants::mergedDepthDetId
HcalDetId mergedDepthDetId(const HcalDetId &id) const
Definition: HcalDDDRecConstants.cc:647
HcalTopology::lastHFRing_
int lastHFRing_
Definition: HcalTopology.h:195
HcalTopology::CALIBSize_
unsigned int CALIBSize_
Definition: HcalTopology.h:213
HcalTopology::kPhiCalibHF1_
static constexpr unsigned int kPhiCalibHF1_
Definition: HcalTopology.h:265
HcalTopology::mergedDepthList29
std::vector< int > mergedDepthList29(HcalDetId id) const
Definition: HcalTopology.h:112
HcalTopology::kOffCalibHEX_
static constexpr unsigned int kOffCalibHEX_
Definition: HcalTopology.h:303
HcalTopology::kOffCalibHO1_
static constexpr unsigned int kOffCalibHO1_
Definition: HcalTopology.h:270
HcalTopology::nEtaCalibHF_
static constexpr unsigned int nEtaCalibHF_
Definition: HcalTopology.h:264
HcalTopology::nCalibHBX_
static constexpr unsigned int nCalibHBX_
Definition: HcalTopology.h:302
HcalTopology::minMaxDepth_
static constexpr int minMaxDepth_
Definition: HcalTopology.h:247
HcalTopology::exclusionList_
std::vector< HcalDetId > exclusionList_
Definition: HcalTopology.h:187
HcalTopologyMode.h
HcalTopology::idFront
HcalDetId idFront(const HcalDetId &id) const
Definition: HcalTopology.h:170
HcalTopology::validHcal
bool validHcal(const HcalDetId &id) const
Definition: HcalTopology.cc:230
HcalTopology::south
std::vector< DetId > south(const DetId &id) const override
Definition: HcalTopology.cc:436
HcalTopology::kHOSizePreLS1
Definition: HcalTopology.h:242
HcalTopologyMode::Mode
Mode
Definition: HcalTopologyMode.h:26
HcalTopology::nCalibHB_
static constexpr unsigned int nCalibHB_
Definition: HcalTopology.h:255
HcalTopology::etaTable
std::vector< double > etaTable
Definition: HcalTopology.h:216
HcalTopology::nEtaHB_
int nEtaHB_
Definition: HcalTopology.h:199
HcalTopology::incIEta
int incIEta(const HcalDetId &id, HcalDetId neighbors[2]) const
Definition: HcalTopology.cc:730
HcalTopology::maxPhiHE_
int maxPhiHE_
Definition: HcalTopology.h:206
HcalTopology::maxDepthHE
int maxDepthHE() const
Definition: HcalTopology.h:140
HcalTopology::nCalibHE1_
static constexpr unsigned int nCalibHE1_
Definition: HcalTopology.h:262
HcalTopology::mergedDepth29
bool mergedDepth29(HcalDetId id) const
Definition: HcalTopology.h:111
HcalTopology::kCALIBSizePreLS1
Definition: HcalTopology.h:246
HcalTopology::firstHFQuadPhiRing_
int firstHFQuadPhiRing_
Definition: HcalTopology.h:201
HcalTopology::nEtaCalibHB_
static constexpr unsigned int nEtaCalibHB_
Definition: HcalTopology.h:250
ecaldqm::zside
int zside(DetId const &)
Definition: EcalDQMCommonUtils.cc:189
HcalCalibDetId
Definition: HcalCalibDetId.h:45
HcalTopology::lastHORing_
int lastHORing_
Definition: HcalTopology.h:196
HcalTopologyMode::TriggerMode_2009
Definition: HcalTopologyMode.h:29
HcalTopology::getHTSize
unsigned int getHTSize() const
Definition: HcalTopology.h:136
HcalTopology::nCalibHEX_
static constexpr unsigned int nCalibHEX_
Definition: HcalTopology.h:307
HcalTopology
Definition: HcalTopology.h:26
HcalTopology::etaCalibHE_
static constexpr int etaCalibHE_[nEtaCalibHE_]
Definition: HcalTopology.h:260
HcalDDDRecConstants::withSpecialRBXHBHE
bool withSpecialRBXHBHE() const
Definition: HcalDDDRecConstants.h:123
HcalTopology::phiCalibHO_
static constexpr int phiCalibHO_[nEtaCalibHO_]
Definition: HcalTopology.h:275
HcalTopology::chanCalibHOs_
static constexpr int chanCalibHOs_
Definition: HcalTopology.h:272
HcalTopology::kOffCalibHFX_
static constexpr unsigned int kOffCalibHFX_
Definition: HcalTopology.h:308
HcalTopology::etaCalibHOX_
static constexpr int etaCalibHOX_[nEtaCalibHOX_]
Definition: HcalTopology.h:293
HcalTopology::denseId2detIdCALIB
HcalCalibDetId denseId2detIdCALIB(const unsigned int &id) const
return a Calib DetId from linear packed id
Definition: HcalTopology.cc:1386
HcalTopology::etaBinsHB_
std::vector< HcalDDDRecConstants::HcalEtaBin > etaBinsHB_
Definition: HcalTopology.h:198
HcalTopology::detId2denseIdHB
unsigned int detId2denseIdHB(const DetId &id) const
return a linear packed id from HB
Definition: HcalTopology.cc:1170
HcalTopology::chanCalibHF1_
static constexpr int chanCalibHF1_[nchanCalibHF1_]
Definition: HcalTopology.h:266
HcalTopology::kPhiCalibHO0_
static constexpr unsigned int kPhiCalibHO0_
Definition: HcalTopology.h:277
HcalTopology::down
std::vector< DetId > down(const DetId &id) const override
Definition: HcalTopology.cc:458
HcalTopology::nEtaCalibHO_
static constexpr unsigned int nEtaCalibHO_
Definition: HcalTopology.h:271
HcalTopology::mergedDepthDetId
HcalDetId mergedDepthDetId(const HcalDetId &id) const
Definition: HcalTopology.h:166
HcalTopology::decAIEta
int decAIEta(const HcalDetId &id, HcalDetId neighbors[2]) const
Definition: HcalTopology.cc:770
HcalTopology::nchanCalibHO_
static constexpr unsigned int nchanCalibHO_
Definition: HcalTopology.h:271
HcalDDDRecConstants::mergedDepthList29
bool mergedDepthList29(int ieta, int iphi, int depth) const
Definition: HcalDDDRecConstants.cc:580
HcalTopology::nCalibHO1_
static constexpr unsigned int nCalibHO1_
Definition: HcalTopology.h:280
HcalTopology::minPhi_
static constexpr unsigned int minPhi_
Definition: HcalTopology.h:248
HcalTopology::depthSegmentation_
SegmentationMap depthSegmentation_
Definition: HcalTopology.h:224
HcalTopology::decIEta
int decIEta(const HcalDetId &id, HcalDetId neighbors[2]) const
Definition: HcalTopology.cc:737
hcaltpdigi_cfi.ieta2
ieta2
Definition: hcaltpdigi_cfi.py:22
HcalTopology::phiCalibHOX1_
static constexpr int phiCalibHOX1_
Definition: HcalTopology.h:297
HcalTopology::firstHEQuadPhiRing_
int firstHEQuadPhiRing_
Definition: HcalTopology.h:201
HcalTopology::getMergePositionFlag
bool getMergePositionFlag() const
Definition: HcalTopology.h:167
HcalTopology::kOffCalibHB_
static constexpr unsigned int kOffCalibHB_
Definition: HcalTopology.h:249
HcalTopology::firstHERing
int firstHERing() const
Definition: HcalTopology.h:93
HcalTopology::firstHEQuadPhiRing
int firstHEQuadPhiRing() const
Definition: HcalTopology.h:102
HcalTopology::kOffCalibHOX_
static constexpr unsigned int kOffCalibHOX_
Definition: HcalTopology.h:291
HcalTopology::kHTSizePhase1
Definition: HcalTopology.h:245
HcalTopology::etaHF2HE_
int etaHF2HE_
Definition: HcalTopology.h:205
HcalTopology::etaRing
int etaRing(HcalSubdetector subdet, double eta) const
eta and phi index from eta, phi values
Definition: HcalTopology.cc:998
HcalTopology::triggerMode_
HcalTopologyMode::TriggerMode triggerMode_
Definition: HcalTopology.h:191
HcalTopology::HOSize_
unsigned int HOSize_
Definition: HcalTopology.h:210
HcalTopology::kSizeForDenseIndexingPreLS1
Definition: HcalTopology.h:239
HcalTopology::excludeHB_
bool excludeHB_
Definition: HcalTopology.h:188
HcalTopology::etaHE2HF_
int etaHE2HF_
Definition: HcalTopology.h:205
HcalTopology::topoVersion
int topoVersion() const override
return a version which identifies the given topology
Definition: HcalTopology.cc:1689
HcalTopology::kCASTORhalf
Definition: HcalTopology.h:234
HcalTopology::nEtaCalibHEX_
static constexpr unsigned int nEtaCalibHEX_
Definition: HcalTopology.h:304
HcalTopology::etaTableHF
std::vector< double > etaTableHF
Definition: HcalTopology.h:216
HcalTopology::getHESize
unsigned int getHESize() const
Definition: HcalTopology.h:133
HcalTopology::maxDepth
int maxDepth(void) const
Definition: HcalTopology.cc:981
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
HcalTopology::kHcalhalf
Definition: HcalTopology.h:237
HcalTopology::unitPhi
std::vector< int > unitPhi
Definition: HcalTopology.h:218
HcalTopology::isBH
bool isBH() const
Definition: HcalTopology.h:162
HcalTopology::firstHEDoublePhiRing
int firstHEDoublePhiRing() const
Definition: HcalTopology.h:101
DetId
Definition: DetId.h:17
HcalTopology::firstHFRing
int firstHFRing() const
Definition: HcalTopology.h:96
HcalTopology::validDetIdPreLS1
bool validDetIdPreLS1(const HcalDetId &id) const
Definition: HcalTopology.cc:537
HcalTopology::firstHERing_
int firstHERing_
Definition: HcalTopology.h:194
HcalTopology::kOffCalibHO2_
static constexpr unsigned int kOffCalibHO2_
Definition: HcalTopology.h:281
HcalTopology::kZDChalf
Definition: HcalTopology.h:233
HcalTopology::chanCalibHE2_
static constexpr int chanCalibHE2_
Definition: HcalTopology.h:284
HcalTopology::etaCalibHB_
static constexpr int etaCalibHB_[nEtaCalibHB_]
Definition: HcalTopology.h:253
HcalTopology::detId2denseIdPreLS1
unsigned int detId2denseIdPreLS1(const DetId &id) const
Definition: HcalTopology.cc:1141
HcalTopology::detId2denseIdHT
unsigned int detId2denseIdHT(const DetId &id) const
return a linear packed id from HT
Definition: HcalTopology.cc:1254
HcalTopology::lastHORing
int lastHORing() const
Definition: HcalTopology.h:99
HcalTopology::HBSize_
unsigned int HBSize_
Definition: HcalTopology.h:208
PVValHelper::eta
Definition: PVValidationHelpers.h:70
HcalTopology::kHFSizePreLS1
Definition: HcalTopology.h:243
HcalTopology::numberOfShapes_
unsigned int numberOfShapes_
Definition: HcalTopology.h:214
HcalTopology::doublePhiBins_
int doublePhiBins_
Definition: HcalTopology.h:203
HcalTopology::kHESizePreLS1
Definition: HcalTopology.h:241
HcalTopology::kHTSizePreLS1
Definition: HcalTopology.h:244
HcalTopology::mPhiCalibHOX_
static constexpr unsigned int mPhiCalibHOX_[nEtaCalibHOX_]
Definition: HcalTopology.h:294
HcalTopology::etaCalibHF_
static constexpr int etaCalibHF_[nEtaCalibHF_]
Definition: HcalTopology.h:267
HcalTopology::chanCalibHO_
static constexpr int chanCalibHO_[nchanCalibHO_]
Definition: HcalTopology.h:273
HcalTopology::exclude
void exclude(const HcalDetId &id)
Definition: HcalTopology.cc:377
HcalTopology::kHBhalf
Definition: HcalTopology.h:228
HcalCalibDetId.h
HcalTopology::validHT
bool validHT(const HcalTrigTowerDetId &id) const
Definition: HcalTopology.cc:239
HcalTopology::firstHFRing_
int firstHFRing_
Definition: HcalTopology.h:195
HcalTopology::detId2denseId
unsigned int detId2denseId(const DetId &id) const override
return a linear packed id
Definition: HcalTopology.cc:1519
HcalTopology::kPhiCalibHE_
static constexpr unsigned int kPhiCalibHE_
Definition: HcalTopology.h:258
HcalTopology::kchanCalibHE1_
static constexpr unsigned int kchanCalibHE1_
Definition: HcalTopology.h:261
HcalTopology::lastHERing_
int lastHERing_
Definition: HcalTopology.h:194
HcalTopology::depthSegmentationOne_
SegmentationMap depthSegmentationOne_
Definition: HcalTopology.h:225
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
HcalTopology::firstHETripleDepthRing_
int firstHETripleDepthRing_
Definition: HcalTopology.h:202
HcalTopology::denseId2detId
DetId denseId2detId(unsigned int) const override
return a linear packed id
Definition: HcalTopology.cc:1562
HcalTopology::kOffCalibHE1_
static constexpr unsigned int kOffCalibHE1_
Definition: HcalTopology.h:256
HcalTopology::detId2denseIdHF
unsigned int detId2denseIdHF(const DetId &id) const
return a linear packed id from HF
Definition: HcalTopology.cc:1234
HcalTopology::nchanCalibHE1_
static constexpr unsigned int nchanCalibHE1_
Definition: HcalTopology.h:257
HcalTopology::phiCalibHOX2_
static constexpr int phiCalibHOX2_
Definition: HcalTopology.h:297
HcalTopology::nchanCalibHF1_
static constexpr unsigned int nchanCalibHF1_
Definition: HcalTopology.h:264
HcalTopology::etaBinsHE_
std::vector< HcalDDDRecConstants::HcalEtaBin > etaBinsHE_
Definition: HcalTopology.h:198
HcalTrigTowerDetId.h
HcalTopology::mode
HcalTopologyMode::Mode mode() const
Definition: HcalTopology.h:34
HcalTopology::decrementDepth
bool decrementDepth(HcalDetId &id) const
Definition: HcalTopology.cc:911
HcalTopology::singlePhiBins_
int singlePhiBins_
Definition: HcalTopology.h:203
HcalTopology::getHFSize
unsigned int getHFSize() const
Definition: HcalTopology.h:135
HcalTopology::validRaw
bool validRaw(const HcalDetId &id) const
Definition: HcalTopology.cc:556
HcalTopology::mPhiCalibHE_
static constexpr unsigned int mPhiCalibHE_
Definition: HcalTopology.h:258
HcalTopology::dPhiTableHF
std::vector< double > dPhiTableHF
Definition: HcalTopology.h:216
HcalTopology::phiCalibHF2_
static constexpr int phiCalibHF2_
Definition: HcalTopology.h:288
HcalTopology::detId2denseIdHE
unsigned int detId2denseIdHE(const DetId &id) const
return a linear packed id from HE
Definition: HcalTopology.cc:1189
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
HcalTopology::kHThalfPhase1
Definition: HcalTopology.h:236
HcalTopology::nCalibHO2_
static constexpr unsigned int nCalibHO2_
Definition: HcalTopology.h:282
HcalTopology::nEtaHE_
int nEtaHE_
Definition: HcalTopology.h:199
HcalTopology::excludeHE_
bool excludeHE_
Definition: HcalTopology.h:188
HcalTopology::etaCalibHEX_
static constexpr int etaCalibHEX_[nEtaCalibHEX_]
Definition: HcalTopology.h:305
HcalTopology::maxDepthHE_
int maxDepthHE_
Definition: HcalTopology.h:204
HcalTopology::etaCalibHO_
static constexpr int etaCalibHO_[nEtaCalibHO_]
Definition: HcalTopology.h:274
HcalTopology::getHOSize
unsigned int getHOSize() const
Definition: HcalTopology.h:134
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
HcalTopology::getHBSize
unsigned int getHBSize() const
Definition: HcalTopology.h:132
HcalTopology::HcalTopology
HcalTopology(const HcalDDDRecConstants *hcons, const bool mergePosition=false)
Definition: HcalTopology.cc:17
HcalTopology::excludeSubdetector
void excludeSubdetector(HcalSubdetector subdet)
Definition: HcalTopology.cc:384
HcalTopology::incIPhi
bool incIPhi(const HcalDetId &id, HcalDetId &neighbor) const
Definition: HcalTopology.cc:627
HcalTopology::maxDepthHB_
int maxDepthHB_
Definition: HcalTopology.h:204
hcaltpdigi_cfi.ieta1
ieta1
Definition: hcaltpdigi_cfi.py:21
HcalDetId.h
HcalTopology::singlePhiBins
int singlePhiBins() const
Definition: HcalTopology.h:105
HcalTopology::kHEhalf
Definition: HcalTopology.h:229
HcalTopology::dddConstants
const HcalDDDRecConstants * dddConstants() const
Definition: HcalTopology.h:164
HcalTopology::idBack
HcalDetId idBack(const HcalDetId &id) const
Definition: HcalTopology.h:171
HcalTopology::firstHFQuadPhiRing
int firstHFQuadPhiRing() const
Definition: HcalTopology.h:103
HcalTopology::mode_
HcalTopologyMode::Mode mode_
Definition: HcalTopology.h:190
HcalTopology::decIPhi
bool decIPhi(const HcalDetId &id, HcalDetId &neighbor) const
Definition: HcalTopology.cc:679
HcalDetId
Definition: HcalDetId.h:12
HcalTopology::triggerMode
HcalTopologyMode::TriggerMode triggerMode() const
Definition: HcalTopology.h:35
HcalTopology::firstHBRing_
int firstHBRing_
Definition: HcalTopology.h:193
HcalTopology::firstHORing
int firstHORing() const
Definition: HcalTopology.h:98
HcalTopology::mergePosition_
bool mergePosition_
Definition: HcalTopology.h:186
HcalTopology::unitPhiHF
std::vector< int > unitPhiHF
Definition: HcalTopology.h:218
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
HcalTopology::nEtaCalibHOX_
static constexpr unsigned int nEtaCalibHOX_
Definition: HcalTopology.h:292
HcalTopology::firstHBRing
int firstHBRing() const
Definition: HcalTopology.h:91
HcalTopology::depthBinInformation
void depthBinInformation(HcalSubdetector subdet, int etaRing, int iphi, int zside, int &nDepthBins, int &startingBin) const
finds the number of depth bins and which is the number to start with
Definition: HcalTopology.cc:817
HcalTopology::lastHERing
int lastHERing() const
Definition: HcalTopology.h:94
HcalTopology::firstHORing_
int firstHORing_
Definition: HcalTopology.h:196
HcalTopology::kPhiCalibHO2_
static constexpr unsigned int kPhiCalibHO2_
Definition: HcalTopology.h:279
HcalTopology::segmentBoundaries
std::pair< int, int > segmentBoundaries(const unsigned ring, const unsigned depth, const bool flag=false) const
Definition: HcalTopology.cc:1093
CaloSubdetectorTopology
Definition: CaloSubdetectorTopology.h:17
HcalTopology::HFSize_
unsigned int HFSize_
Definition: HcalTopology.h:211
HcalTopology::validCalib
bool validCalib(const HcalCalibDetId &id) const
Definition: HcalTopology.cc:277
HcalTopology::kchanCalibHF1_
static constexpr unsigned int kchanCalibHF1_
Definition: HcalTopology.h:268
HcalTopology::kHFhalf
Definition: HcalTopology.h:231
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalTopology::kchanCalibHE2_
static constexpr unsigned int kchanCalibHE2_
Definition: HcalTopology.h:285
HcalTopology::nEtaCalibHE_
static constexpr unsigned int nEtaCalibHE_
Definition: HcalTopology.h:257
HcalTopology::SegmentationMap
std::map< unsigned, std::vector< int > > SegmentationMap
Definition: HcalTopology.h:223
HcalTopology::chanCalibHB_
static constexpr int chanCalibHB_[nchanCalibHB_]
Definition: HcalTopology.h:252
HcalTopology::mPhiCalibHO1_
static constexpr unsigned int mPhiCalibHO1_
Definition: HcalTopology.h:276
HcalTopology::mPhiCalibHBX_
static constexpr unsigned int mPhiCalibHBX_
Definition: HcalTopology.h:299
HcalTopology::incAIEta
int incAIEta(const HcalDetId &id, HcalDetId neighbors[2]) const
Definition: HcalTopology.cc:745
HcalSubdetector
HcalSubdetector
Definition: HcalAssistant.h:31
HcalTopology::up
std::vector< DetId > up(const DetId &id) const override
Definition: HcalTopology.cc:447
HcalTopology::valid
bool valid(const DetId &id) const override
Definition: HcalTopology.cc:225
DDAxes::phi
HcalTopology::chanCalibHE1_
static constexpr int chanCalibHE1_[nchanCalibHE1_]
Definition: HcalTopology.h:259
CaloSubdetectorTopology.h
HcalTopology::etaMax
double etaMax(HcalSubdetector subdet) const
Definition: HcalTopology.cc:1101
HcalTopology::setDepthSegmentation
void setDepthSegmentation(const unsigned ring, const std::vector< int > &readoutDepths, const bool flag)
Definition: HcalTopology.cc:1085
HcalTopology::mPhiCalibHF1_
static constexpr unsigned int mPhiCalibHF1_
Definition: HcalTopology.h:265
HcalTopology::west
std::vector< DetId > west(const DetId &id) const override
Definition: HcalTopology.cc:414
HcalTopology::phioff
std::vector< double > phioff
Definition: HcalTopology.h:217
HcalTopology::kPhiCalibHB_
static constexpr unsigned int kPhiCalibHB_
Definition: HcalTopology.h:251
HcalTopology::getDepthSegmentation
void getDepthSegmentation(const unsigned ring, std::vector< int > &readoutDepths, const bool flag=false) const
Definition: HcalTopology.cc:1065
HcalTopology::kHThalf
Definition: HcalTopology.h:232
HcalTopology::nCalibHOX_
static constexpr int nCalibHOX_
Definition: HcalTopology.h:296
HcalTopology::incrementDepth
bool incrementDepth(HcalDetId &id) const
Definition: HcalTopology.cc:870
HcalTopology::getCALIBSize
unsigned int getCALIBSize() const
Definition: HcalTopology.h:137
HcalTopology::kchanCalibHB_
static constexpr unsigned int kchanCalibHB_
Definition: HcalTopology.h:254
HcalTopology::firstHETripleDepthRing
int firstHETripleDepthRing() const
Definition: HcalTopology.h:104
HcalTopology::getNumberOfShapes
unsigned int getNumberOfShapes() const
Definition: HcalTopology.h:161
HcalTopology::nCalibHE2_
static constexpr unsigned int nCalibHE2_
Definition: HcalTopology.h:286
HcalTopology::lastHBRing_
int lastHBRing_
Definition: HcalTopology.h:193
HcalDDDRecConstants.h
relativeConstraints.ring
ring
Definition: relativeConstraints.py:68
HcalTopology::etaRange
std::pair< double, double > etaRange(HcalSubdetector subdet, int ieta) const
Definition: HcalTopology.cc:1125
HcalTopology::detId2denseIdHO
unsigned int detId2denseIdHO(const DetId &id) const
return a linear packed id from HO
Definition: HcalTopology.cc:1216
HcalTopology::detId2denseIdCALIB
unsigned int detId2denseIdCALIB(const DetId &id) const
return a linear packed id from CALIB
Definition: HcalTopology.cc:1279
HcalTopology::producerTag
static std::string producerTag()
Definition: HcalTopology.h:43
HcalTopology::ncells
unsigned int ncells() const override
return a count of valid cells (for dense indexing use)
Definition: HcalTopology.cc:1687
HcalTopology::mPhiCalibHB_
static constexpr unsigned int mPhiCalibHB_
Definition: HcalTopology.h:251
HcalTopology::lastHFRing
int lastHFRing() const
Definition: HcalTopology.h:97
HcalTopology::kchanCalibHF2_
static constexpr unsigned int kchanCalibHF2_
Definition: HcalTopology.h:289
HcalTopology::kCALIBhalf
Definition: HcalTopology.h:235
HcalTopology::etaCalibHBX_
static constexpr int etaCalibHBX_
Definition: HcalTopology.h:300
HcalTopology::excludeHF_
bool excludeHF_
Definition: HcalTopology.h:188
HcalTopologyMode::TriggerMode
TriggerMode
Definition: HcalTopologyMode.h:28
HcalTopology::nchanCalibHB_
static constexpr unsigned int nchanCalibHB_
Definition: HcalTopology.h:250
HcalTopology::unmergeDepthDetId
void unmergeDepthDetId(const HcalDetId &id, std::vector< HcalDetId > &ids) const
Definition: HcalTopology.h:168
HcalTopology::phiCalibHOX3_
static constexpr int phiCalibHOX3_
Definition: HcalTopology.h:297
HcalTopology::HESize_
unsigned int HESize_
Definition: HcalTopology.h:209
HcalDDDRecConstants
Definition: HcalDDDRecConstants.h:23
HcalTopology::nPhiBins
int nPhiBins(int etaRing) const
how many phi segments in this ring
Definition: HcalTopology.cc:956
HcalTopology::maxPhi_
static constexpr unsigned int maxPhi_
Definition: HcalTopology.h:248
HcalTopology::topoVersion_
int topoVersion_
Definition: HcalTopology.h:220
HcalTopology::lastHBHERing
int lastHBHERing() const
Definition: HcalTopology.h:95
HcalTopology::east
std::vector< DetId > east(const DetId &id) const override
Definition: HcalTopology.cc:403
HcalTopology::kPhiCalibHO1_
static constexpr unsigned int kPhiCalibHO1_
Definition: HcalTopology.h:278
HcalDDDRecConstants::idFront
HcalDetId idFront(const HcalDetId &id) const
Definition: HcalDDDRecConstants.cc:655
HcalTopology::maxDepthHF_
int maxDepthHF_
Definition: HcalTopology.h:204
HcalTopology::getPhiZOne
int getPhiZOne(std::vector< std::pair< int, int > > &phiz) const
Definition: HcalTopology.h:130
HcalTopology::nEtaCalibHBX_
static constexpr unsigned int nEtaCalibHBX_
Definition: HcalTopology.h:299
HcalTopology::kOffCalibHF2_
static constexpr unsigned int kOffCalibHF2_
Definition: HcalTopology.h:287
HcalTopology::firstHEDoublePhiRing_
int firstHEDoublePhiRing_
Definition: HcalTopology.h:201
HcalTopology::north
std::vector< DetId > north(const DetId &id) const override
Definition: HcalTopology.cc:425
HcalTopology::isExcluded
bool isExcluded(const HcalDetId &id) const
Definition: HcalTopology.cc:349
HcalTopology::maxEta_
int maxEta_
Definition: HcalTopology.h:206
HcalTopology::nPhiCalibHOX_
static constexpr unsigned int nPhiCalibHOX_[nEtaCalibHOX_]
Definition: HcalTopology.h:295
HcalDDDRecConstants::getPhiZOne
int getPhiZOne(std::vector< std::pair< int, int >> &phiz) const
Definition: HcalDDDRecConstants.cc:397
HcalTopology::chanCalibHF2_
static constexpr int chanCalibHF2_
Definition: HcalTopology.h:288
HcalTopology::kHBSizePreLS1
Definition: HcalTopology.h:240
HcalTopology::validDetId
bool validDetId(HcalSubdetector subdet, int ieta, int iphi, int depth) const
Definition: HcalTopology.cc:235
HcalTopology::dPhiTable
std::vector< double > dPhiTable
Definition: HcalTopology.h:216
HcalTopology::withSpecialRBXHBHE
bool withSpecialRBXHBHE() const
Definition: HcalTopology.h:165
HcalTopology::nCalibHF1_
static constexpr unsigned int nCalibHF1_
Definition: HcalTopology.h:269
HcalTopology::kHOhalf
Definition: HcalTopology.h:230
HcalTopology::kOffCalibHF1_
static constexpr unsigned int kOffCalibHF1_
Definition: HcalTopology.h:263
HcalTopology::mPhiCalibHEX_
static constexpr unsigned int mPhiCalibHEX_
Definition: HcalTopology.h:304
HcalTopology::mPhiCalibHO0_
static constexpr unsigned int mPhiCalibHO0_
Definition: HcalTopology.h:276
HcalDDDRecConstants::unmergeDepthDetId
void unmergeDepthDetId(const HcalDetId &id, std::vector< HcalDetId > &ids) const
Definition: HcalDDDRecConstants.cc:671
HcalTopology::kOffCalibHBX_
static constexpr unsigned int kOffCalibHBX_
Definition: HcalTopology.h:298
HcalTopology::hcons_
const HcalDDDRecConstants * hcons_
Definition: HcalTopology.h:185
HcalDDDRecConstants::idBack
HcalDetId idBack(const HcalDetId &id) const
Definition: HcalDDDRecConstants.cc:663
HcalTopology::kOffCalibHE2_
static constexpr unsigned int kOffCalibHE2_
Definition: HcalTopology.h:283
HcalTopology::excludeHO_
bool excludeHO_
Definition: HcalTopology.h:188
HcalTopology::phiBin
int phiBin(HcalSubdetector subdet, int etaRing, double phi) const
Definition: HcalTopology.cc:1021
RemoveAddSevLevel.flag
flag
Definition: RemoveAddSevLevel.py:117
HcalTopology::lastHBRing
int lastHBRing() const
Definition: HcalTopology.h:92
HcalTopology::nCalibHF2_
static constexpr unsigned int nCalibHF2_
Definition: HcalTopology.h:290
HcalDDDRecConstants::isBH
bool isBH() const
Definition: HcalDDDRecConstants.h:109
HcalTopology::maxDepthHB
int maxDepthHB() const
Definition: HcalTopology.h:139
HcalTopology::kPhiCalibHEX_
static constexpr unsigned int kPhiCalibHEX_
Definition: HcalTopology.h:306
HcalTrigTowerDetId
Definition: HcalTrigTowerDetId.h:14
HcalTopology::HTSize_
unsigned int HTSize_
Definition: HcalTopology.h:212
HcalTopology::doublePhiBins
int doublePhiBins() const
Definition: HcalTopology.h:106