CMS 3D CMS Logo

CaloTowerTopology.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_CALOTOPOLOGY_CALOTOWERTOPOLOGY_H
2 #define GEOMETRY_CALOTOPOLOGY_CALOTOWERTOPOLOGY_H 1
3 
8 
14 public:
16  CaloTowerTopology(const HcalTopology* topology);
18  ~CaloTowerTopology() override {}
20  bool valid(const DetId& id) const override;
21  virtual bool validDetId(const CaloTowerDetId& id) const;
23  std::vector<DetId> east(const DetId& id) const override;
25  std::vector<DetId> west(const DetId& id) const override;
27  std::vector<DetId> north(const DetId& id) const override;
29  std::vector<DetId> south(const DetId& id) const override;
31  std::vector<DetId> up(const DetId& id) const override;
33  std::vector<DetId> down(const DetId& id) const override;
34 
35  //mimic accessors from HcalTopology, but with continuous ieta
36  int firstHBRing() const { return firstHBRing_; }
37  int lastHBRing() const { return lastHBRing_; }
38  int firstHERing() const { return firstHERing_; }
39  int lastHERing() const { return lastHERing_; }
40  int firstHFRing() const { return firstHFRing_; }
41  int lastHFRing() const { return lastHFRing_; }
42  int firstHORing() const { return firstHORing_; }
43  int lastHORing() const { return lastHORing_; }
45  int firstHEQuadPhiRing() const { return firstHEQuadPhiRing_; }
46  int firstHFQuadPhiRing() const { return firstHFQuadPhiRing_; }
47 
48  //conversion between CaloTowerTopology ieta and HcalTopology ieta
49  int convertCTtoHcal(int ct_ieta) const;
50  int convertHcaltoCT(int hcal_ieta, HcalSubdetector subdet) const;
51 
52  //dense index functions moved from CaloTowerDetId
53  uint32_t denseIndex(const DetId& id) const;
54  CaloTowerDetId detIdFromDenseIndex(uint32_t din) const;
55  bool validDenseIndex(uint32_t din) const { return (din < kSizeForDenseIndexing); }
56  uint32_t sizeForDenseIndexing() const { return kSizeForDenseIndexing; }
57 
58 private:
59  //member variables
68 };
69 #endif
CaloTowerTopology::CaloTowerTopology
CaloTowerTopology(const HcalTopology *topology)
standard constructor
Definition: CaloTowerTopology.cc:8
CaloTowerTopology::lastHERing_
int lastHERing_
Definition: CaloTowerTopology.h:62
CaloTowerTopology::firstHFRing
int firstHFRing() const
Definition: CaloTowerTopology.h:40
CaloTowerTopology::lastHBRing_
int lastHBRing_
Definition: CaloTowerTopology.h:61
CaloTowerTopology::south
std::vector< DetId > south(const DetId &id) const override
Definition: CaloTowerTopology.cc:213
HcalTopology
Definition: HcalTopology.h:26
CaloTowerTopology::firstHEDoublePhiRing
int firstHEDoublePhiRing() const
Definition: CaloTowerTopology.h:44
CaloTowerTopology::up
std::vector< DetId > up(const DetId &id) const override
Definition: CaloTowerTopology.cc:231
CaloTowerTopology::nSinglePhi_
int nSinglePhi_
Definition: CaloTowerTopology.h:66
CaloTowerTopology::lastHFRing_
int lastHFRing_
Definition: CaloTowerTopology.h:63
CaloTowerTopology
Definition: CaloTowerTopology.h:13
CaloTowerTopology::lastHORing
int lastHORing() const
Definition: CaloTowerTopology.h:43
CaloTowerTopology::firstHERing
int firstHERing() const
Definition: CaloTowerTopology.h:38
CaloTowerTopology::down
std::vector< DetId > down(const DetId &id) const override
Definition: CaloTowerTopology.cc:233
CaloTowerTopology::validDetId
virtual bool validDetId(const CaloTowerDetId &id) const
Definition: CaloTowerTopology.cc:99
DetId
Definition: DetId.h:17
CaloTowerTopology::convertHcaltoCT
int convertHcaltoCT(int hcal_ieta, HcalSubdetector subdet) const
Definition: CaloTowerTopology.cc:79
CaloTowerTopology::kSizeForDenseIndexing
uint32_t kSizeForDenseIndexing
Definition: CaloTowerTopology.h:67
CaloTowerTopology::lastHFRing
int lastHFRing() const
Definition: CaloTowerTopology.h:41
CaloTowerTopology::valid
bool valid(const DetId &id) const override
is this detid present in the Topology?
Definition: CaloTowerTopology.cc:94
CaloTowerTopology::nDoublePhi_
int nDoublePhi_
Definition: CaloTowerTopology.h:66
CaloTowerTopology::firstHEQuadPhiRing
int firstHEQuadPhiRing() const
Definition: CaloTowerTopology.h:45
CaloTowerTopology::east
std::vector< DetId > east(const DetId &id) const override
Definition: CaloTowerTopology.cc:112
CaloTowerTopology::north
std::vector< DetId > north(const DetId &id) const override
Definition: CaloTowerTopology.cc:192
CaloTowerTopology::firstHFQuadPhiRing_
int firstHFQuadPhiRing_
Definition: CaloTowerTopology.h:65
CaloTowerTopology::firstHORing
int firstHORing() const
Definition: CaloTowerTopology.h:42
CaloTowerTopology::nQuadPhi_
int nQuadPhi_
Definition: CaloTowerTopology.h:66
CaloTowerTopology::detIdFromDenseIndex
CaloTowerDetId detIdFromDenseIndex(uint32_t din) const
Definition: CaloTowerTopology.cc:247
cropTnPTrees.din
din
Definition: cropTnPTrees.py:30
CaloTowerTopology::firstHERing_
int firstHERing_
Definition: CaloTowerTopology.h:62
HcalDetId.h
CaloTowerTopology::lastHERing
int lastHERing() const
Definition: CaloTowerTopology.h:39
CaloTowerTopology::firstHEDoublePhiRing_
int firstHEDoublePhiRing_
Definition: CaloTowerTopology.h:65
CaloTowerDetId.h
CaloSubdetectorTopology
Definition: CaloSubdetectorTopology.h:17
HcalSubdetector
HcalSubdetector
Definition: HcalAssistant.h:31
CaloTowerTopology::lastHBRing
int lastHBRing() const
Definition: CaloTowerTopology.h:37
CaloSubdetectorTopology.h
HcalTopology.h
CaloTowerTopology::convertCTtoHcal
int convertCTtoHcal(int ct_ieta) const
Definition: CaloTowerTopology.cc:67
CaloTowerTopology::firstHORing_
int firstHORing_
Definition: CaloTowerTopology.h:64
CaloTowerTopology::firstHFRing_
int firstHFRing_
Definition: CaloTowerTopology.h:63
CaloTowerTopology::west
std::vector< DetId > west(const DetId &id) const override
Definition: CaloTowerTopology.cc:151
CaloTowerTopology::firstHEQuadPhiRing_
int firstHEQuadPhiRing_
Definition: CaloTowerTopology.h:65
CaloTowerTopology::sizeForDenseIndexing
uint32_t sizeForDenseIndexing() const
Definition: CaloTowerTopology.h:56
CaloTowerTopology::~CaloTowerTopology
~CaloTowerTopology() override
virtual destructor
Definition: CaloTowerTopology.h:18
CaloTowerTopology::validDenseIndex
bool validDenseIndex(uint32_t din) const
Definition: CaloTowerTopology.h:55
CaloTowerTopology::firstHBRing
int firstHBRing() const
Definition: CaloTowerTopology.h:36
CaloTowerTopology::firstHBRing_
int firstHBRing_
Definition: CaloTowerTopology.h:61
CaloTowerTopology::lastHORing_
int lastHORing_
Definition: CaloTowerTopology.h:64
CaloTowerTopology::nEtaHE_
int nEtaHE_
Definition: CaloTowerTopology.h:66
CaloTowerTopology::hcaltopo
const HcalTopology * hcaltopo
Definition: CaloTowerTopology.h:60
CaloTowerTopology::denseIndex
uint32_t denseIndex(const DetId &id) const
Definition: CaloTowerTopology.cc:235
CaloTowerTopology::firstHFQuadPhiRing
int firstHFQuadPhiRing() const
Definition: CaloTowerTopology.h:46
CaloTowerDetId
Definition: CaloTowerDetId.h:12