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 
26  public:
29 
31  virtual ~DTChamber();
32 
34  DTChamberId id() const;
35 
36  // Which subdetector
38 
40  bool operator==(const DTChamber& ch) const;
41 
43  void add(DTSuperLayer* sl);
44 
46  virtual std::vector< const GeomDet*> components() const;
47 
49  virtual const GeomDet* component(DetId id) const;
50 
52  const std::vector< const DTSuperLayer*>& superLayers() const;
53 
55  const DTSuperLayer* superLayer(DTSuperLayerId id) const;
56 
59  const DTSuperLayer* superLayer(int isl) const;
60 
62  const DTLayer* layer(DTLayerId id) const;
63 
64  private:
65 
67 
68  // The chamber owns its SL
69  std::vector<const DTSuperLayer*> theSLs;
70 
71 };
72 #endif
DTChamber(DTChamberId id, const ReferenceCountingPointer< BoundPlane > &plane)
Constructor.
Definition: DTChamber.cc:19
virtual std::vector< const GeomDet * > components() const
Return the superlayers in the chamber.
Definition: DTChamber.cc:45
const DTLayer * layer(DTLayerId id) const
Return the layer corresponding to the given id.
Definition: DTChamber.cc:80
virtual ~DTChamber()
Destructor.
Definition: DTChamber.cc:26
virtual SubDetector subDetector() const
Which subdetector.
Definition: DTChamber.h:37
bool operator==(const DTChamber &ch) const
equal if the id is the same
Definition: DTChamber.cc:37
const std::vector< const DTSuperLayer * > & superLayers() const
Return the superlayers in the chamber.
Definition: DTChamber.cc:60
DTChamberId id() const
Return the DTChamberId of this chamber.
Definition: DTChamber.cc:33
Definition: DetId.h:18
DTChamberId theId
Definition: DTChamber.h:66
std::vector< const DTSuperLayer * > theSLs
Definition: DTChamber.h:69
void add(DTSuperLayer *sl)
Add SL to the chamber which takes ownership.
Definition: DTChamber.cc:41
virtual const GeomDet * component(DetId id) const
Return the sub-component (SL or layer) with a given id in this chamber.
Definition: DTChamber.cc:50
const DTSuperLayer * superLayer(DTSuperLayerId id) const
Return the superlayer corresponding to the given id.
Definition: DTChamber.cc:65