CMS 3D CMS Logo

DTChamber.h
Go to the documentation of this file.
1 #ifndef DTGeometry_DTChamber_h
2 #define DTGeometry_DTChamber_h
3 
20 
21 class DTSuperLayer;
22 class DTLayer;
23 
24 class DTChamber : public GeomDet {
25 public:
28 
30  ~DTChamber() override;
31 
33  DTChamberId id() const;
34 
35  // Which subdetector
36  SubDetector subDetector() const override { return GeomDetEnumerators::DT; }
37 
39  bool operator==(const DTChamber& ch) const;
40 
42  void add(DTSuperLayer* sl);
43 
45  std::vector<const GeomDet*> components() const override;
46 
48  const GeomDet* component(DetId id) const override;
49 
51  const std::vector<const DTSuperLayer*>& superLayers() const;
52 
54  const DTSuperLayer* superLayer(const DTSuperLayerId& id) const;
55 
58  const DTSuperLayer* superLayer(int isl) const;
59 
61  const DTLayer* layer(const DTLayerId& id) const;
62 
63 private:
65 
66  // The chamber owns its SL
67  std::vector<const DTSuperLayer*> theSLs;
68 };
69 #endif
DTChamber::id
DTChamberId id() const
Return the DTChamberId of this chamber.
Definition: DTChamber.cc:32
GeomDetEnumerators::SubDetector
SubDetector
Definition: GeomDetEnumerators.h:10
DTSuperLayerId
Definition: DTSuperLayerId.h:12
DTChamber::layer
const DTLayer * layer(const DTLayerId &id) const
Return the layer corresponding to the given id.
Definition: DTChamber.cc:67
DTChamber::~DTChamber
~DTChamber() override
Destructor.
Definition: DTChamber.cc:25
GeomDet
Definition: GeomDet.h:27
DTLayerId.h
DTChamber
Definition: DTChamber.h:24
DTChamber::theId
DTChamberId theId
Definition: DTChamber.h:64
DTChamber::component
const GeomDet * component(DetId id) const override
Return the sub-component (SL or layer) with a given id in this chamber.
Definition: DTChamber.cc:42
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
DTSuperLayer
Definition: DTSuperLayer.h:24
DTChamber::add
void add(DTSuperLayer *sl)
Add SL to the chamber which takes ownership.
Definition: DTChamber.cc:36
DTChamber::DTChamber
DTChamber(const DTChamberId &id, const ReferenceCountingPointer< BoundPlane > &plane)
Constructor.
Definition: DTChamber.cc:19
DetId
Definition: DetId.h:17
DTChamber::subDetector
SubDetector subDetector() const override
Which subdetector.
Definition: DTChamber.h:36
DTChamber::components
std::vector< const GeomDet * > components() const override
Return the superlayers in the chamber.
Definition: DTChamber.cc:38
DTChamberId.h
DTLayerId
Definition: DTLayerId.h:12
GeomDetEnumerators::DT
Definition: GeomDetEnumerators.h:18
DTChamber::theSLs
std::vector< const DTSuperLayer * > theSLs
Definition: DTChamber.h:67
DTChamber::superLayers
const std::vector< const DTSuperLayer * > & superLayers() const
Return the superlayers in the chamber.
Definition: DTChamber.cc:51
DTLayer
Definition: DTLayer.h:25
GeomDet.h
DTChamberId
Definition: DTChamberId.h:14
DTChamber::operator==
bool operator==(const DTChamber &ch) const
equal if the id is the same
Definition: DTChamber.cc:34
DTSuperLayerId.h
DTChamber::superLayer
const DTSuperLayer * superLayer(const DTSuperLayerId &id) const
Return the superlayer corresponding to the given id.
Definition: DTChamber.cc:53