CMS 3D CMS Logo

CastorTopology.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_CALOTOPOLOGY_CASTORTOPOLOGY_H
2 #define GEOMETRY_CALOTOPOLOGY_CASTORTOPOLOGY_H 1
3 
4 #include <vector>
7 
14 public:
17  void exclude(const HcalCastorDetId& id);
19  void exclude(int zside);
23  int exclude(int zside,
24  HcalCastorDetId::Section section1,
25  int isec1,
26  int imod1,
27  HcalCastorDetId::Section section2,
28  int isec2,
29  int imod2);
30 
33  virtual bool valid(const HcalCastorDetId& id) const;
34 
36  virtual bool validRaw(const HcalCastorDetId& id) const;
37 
39  virtual std::vector<DetId> incSector(const DetId& id) const;
40 
42  virtual std::vector<DetId> incModule(const DetId& id) const;
43 
44  //** I have to put this here since they inherit from CaloSubdetectorTopology
45  std::vector<DetId> east(const DetId& id) const override;
46  std::vector<DetId> west(const DetId& id) const override;
47  std::vector<DetId> north(const DetId& id) const override;
48  std::vector<DetId> south(const DetId& id) const override;
49  std::vector<DetId> up(const DetId& id) const override;
50  std::vector<DetId> down(const DetId& id) const override;
51 
52  // how many channels (deph) for a given section
55 
56  //return first and last cell of each section
59 
60 private:
61  std::vector<HcalCastorDetId> exclusionList_;
62 
64 
66 
67  bool isExcluded(const HcalCastorDetId& id) const;
68 
69  int firstEMModule() const { return firstEMModule_; }
70  int firstHADModule() const { return firstHADModule_; }
71  int lastEMModule() const { return lastEMModule_; }
72  int lastHADModule() const { return lastHADModule_; }
73 };
74 
75 #endif
CastorTopology::south
std::vector< DetId > south(const DetId &id) const override
Definition: CastorTopology.cc:225
CastorTopology::incModule
virtual std::vector< DetId > incModule(const DetId &id) const
Definition: CastorTopology.cc:167
CastorTopology::exclude
void exclude(const HcalCastorDetId &id)
Definition: CastorTopology.cc:45
CastorTopology::firstHADModule
int firstHADModule() const
Definition: CastorTopology.h:70
CastorTopology::lastCell
int lastCell(HcalCastorDetId::Section section) const
Definition: CastorTopology.cc:273
ecaldqm::zside
int zside(DetId const &)
Definition: EcalDQMCommonUtils.cc:189
CastorTopology::isExcluded
bool isExcluded(const HcalCastorDetId &id) const
Definition: CastorTopology.cc:21
CaloSubdetectorTopology::valid
virtual bool valid(const DetId &) const
is this detid present in the Topology?
Definition: CaloSubdetectorTopology.h:24
HcalCastorDetId::Section
Section
Definition: HcalCastorDetId.h:25
CastorTopology::excludeZP_
bool excludeZP_
Definition: CastorTopology.h:63
DetId
Definition: DetId.h:17
CastorTopology::lastHADModule
int lastHADModule() const
Definition: CastorTopology.h:72
CastorTopology::CastorTopology
CastorTopology()
Definition: CastorTopology.cc:9
CastorTopology::down
std::vector< DetId > down(const DetId &id) const override
Definition: CastorTopology.cc:235
CastorTopology::excludeHAD_
bool excludeHAD_
Definition: CastorTopology.h:63
CastorTopology::lastHADModule_
int lastHADModule_
Definition: CastorTopology.h:65
CastorTopology::firstHADModule_
int firstHADModule_
Definition: CastorTopology.h:65
HcalCastorDetId
Definition: HcalCastorDetId.h:23
CastorTopology::lastEMModule_
int lastEMModule_
Definition: CastorTopology.h:65
CastorTopology::valid
virtual bool valid(const HcalCastorDetId &id) const
Definition: CastorTopology.cc:19
CastorTopology::west
std::vector< DetId > west(const DetId &id) const override
Definition: CastorTopology.cc:214
CaloSubdetectorTopology::ncells
virtual unsigned int ncells() const
return a count of valid cells (for dense indexing use)
Definition: CaloSubdetectorTopology.h:30
CastorTopology
Definition: CastorTopology.h:13
CastorTopology::up
std::vector< DetId > up(const DetId &id) const override
Definition: CastorTopology.cc:230
CastorTopology::north
std::vector< DetId > north(const DetId &id) const override
Definition: CastorTopology.cc:220
CaloSubdetectorTopology
Definition: CaloSubdetectorTopology.h:17
CastorTopology::firstEMModule
int firstEMModule() const
Definition: CastorTopology.h:69
trackingPlots.section
section
Definition: trackingPlots.py:1380
CastorTopology::excludeZN_
bool excludeZN_
Definition: CastorTopology.h:63
CaloSubdetectorTopology.h
CastorTopology::validRaw
virtual bool validRaw(const HcalCastorDetId &id) const
Definition: CastorTopology.cc:137
CastorTopology::excludeEM_
bool excludeEM_
Definition: CastorTopology.h:63
CastorTopology::firstEMModule_
int firstEMModule_
Definition: CastorTopology.h:65
CastorTopology::exclusionList_
std::vector< HcalCastorDetId > exclusionList_
Definition: CastorTopology.h:61
CastorTopology::lastEMModule
int lastEMModule() const
Definition: CastorTopology.h:71
CastorTopology::east
std::vector< DetId > east(const DetId &id) const override
Definition: CastorTopology.cc:208
HcalCastorDetId.h
CastorTopology::incSector
virtual std::vector< DetId > incSector(const DetId &id) const
Definition: CastorTopology.cc:141
CastorTopology::firstCell
int firstCell(HcalCastorDetId::Section section) const
Definition: CastorTopology.cc:257