CMS 3D CMS Logo

GEMChamber.h
Go to the documentation of this file.
1 #ifndef GEMGeometry_GEMChamber_h
2 #define GEMGeometry_GEMChamber_h
3 
16 
17 class GEMEtaPartition;
18 
19 class GEMChamber : public GeomDet {
20 public:
23 
25  ~GEMChamber() override;
26 
28  GEMDetId id() const;
29 
30  // Which subdetector
31  SubDetector subDetector() const override { return GeomDetEnumerators::GEM; }
32 
34  bool operator==(const GEMChamber& ch) const;
35 
37  void add(const GEMEtaPartition* roll);
38 
40  std::vector<const GeomDet*> components() const override;
41 
43  const GeomDet* component(DetId id) const override;
44 
46  const GEMEtaPartition* etaPartition(GEMDetId id) const;
47 
48  const GEMEtaPartition* etaPartition(int isl) const;
49 
51  const std::vector<const GEMEtaPartition*>& etaPartitions() const;
52 
54  int nEtaPartitions() const;
55 
56 private:
58 
59  // vector of eta partitions for a chamber
60  std::vector<const GEMEtaPartition*> etaPartitions_;
61 };
62 #endif
GEMDetId detId_
Definition: GEMChamber.h:57
const GEMEtaPartition * etaPartition(GEMDetId id) const
Return the eta partition corresponding to the given id.
Definition: GEMChamber.cc:33
std::vector< const GEMEtaPartition * > etaPartitions_
Definition: GEMChamber.h:60
int nEtaPartitions() const
Retunr numbers of eta partitions.
Definition: GEMChamber.cc:31
GEMChamber(GEMDetId id, const ReferenceCountingPointer< BoundPlane > &plane)
Constructor.
Definition: GEMChamber.cc:11
GEMDetId id() const
Return the GEMDetId of this chamber.
Definition: GEMChamber.cc:17
SubDetector subDetector() const override
Which subdetector.
Definition: GEMChamber.h:31
std::vector< const GeomDet * > components() const override
Return the rolls in the chamber.
Definition: GEMChamber.cc:23
bool operator==(const GEMChamber &ch) const
equal if the id is the same
Definition: GEMChamber.cc:19
~GEMChamber() override
Destructor.
Definition: GEMChamber.cc:15
Definition: DetId.h:17
void add(const GEMEtaPartition *roll)
Add EtaPartition to the chamber which takes ownership.
Definition: GEMChamber.cc:21
const GeomDet * component(DetId id) const override
Return the sub-component (roll) with a given id in this chamber.
Definition: GEMChamber.cc:27
const std::vector< const GEMEtaPartition * > & etaPartitions() const
Return the eta partitions.
Definition: GEMChamber.cc:29