CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTSuperLayer.h
Go to the documentation of this file.
1 #ifndef DTSUPERLAYER_H
2 #define DTSUPERLAYER_H
3 
16 /* Base Class Headers */
18 
19 /* Collaborating Class Declarations */
22 
23 class DTLayer;
24 class DTChamber;
25 
26 
27 class DTSuperLayer : public GeomDet {
28 
29  public:
30 
31 /* Constructor */
34  const DTChamber* ch=0);
35 
36 /* Destructor */
37  virtual ~DTSuperLayer() ;
38 
39 /* Operations */
41  DTSuperLayerId id() const;
42 
43  // Which subdetector
45 
47  bool operator==(const DTSuperLayer& sl) const ;
48 
50  virtual std::vector< const GeomDet*> components() const;
51 
53  virtual const GeomDet* component(DetId id) const;
54 
56  const std::vector< const DTLayer*>& layers() const;
57 
59  void add(DTLayer* l);
60 
63  const DTChamber* chamber() const;
64 
66  const DTLayer* layer(DTLayerId id) const;
67 
70  const DTLayer* layer(int ilay) const;
71 
72 
73  private:
75  // The SL owns its Layer
76  std::vector< const DTLayer*> theLayers;
77  const DTChamber* theCh;
78 
79  protected:
80 
81 };
82 #endif // DTSUPERLAYER_H
83 
void add(DTLayer *l)
Add layer to the SL which owns it.
Definition: DTSuperLayer.cc:61
virtual SubDetector subDetector() const
Which subdetector.
Definition: DTSuperLayer.h:44
DTSuperLayerId theId
Definition: DTSuperLayer.h:74
DTSuperLayerId id() const
Return the DetId of this SL.
Definition: DTSuperLayer.cc:38
virtual ~DTSuperLayer()
Definition: DTSuperLayer.cc:31
const DTLayer * layer(DTLayerId id) const
Return the layer corresponding to the given id.
Definition: DTSuperLayer.cc:70
const DTChamber * theCh
Definition: DTSuperLayer.h:77
Definition: DetId.h:20
const std::vector< const DTLayer * > & layers() const
Return the layers in the SL.
Definition: DTSuperLayer.cc:57
bool operator==(const DTSuperLayer &sl) const
True if id are the same.
Definition: DTSuperLayer.cc:42
const DTChamber * chamber() const
Definition: DTSuperLayer.cc:66
std::vector< const DTLayer * > theLayers
Definition: DTSuperLayer.h:76
virtual const GeomDet * component(DetId id) const
Return the layer with a given id in this SL.
Definition: DTSuperLayer.cc:52
DTSuperLayer(DTSuperLayerId id, ReferenceCountingPointer< BoundPlane > &plane, const DTChamber *ch=0)
Definition: DTSuperLayer.cc:23
virtual std::vector< const GeomDet * > components() const
Return the layers in the SL.
Definition: DTSuperLayer.cc:47