CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CSCChamber.h
Go to the documentation of this file.
1 #ifndef Geometry_CSCGeometry_CSCChamber_H
2 #define Geometry_CSCGeometry_CSCChamber_H
3 
19 
20 class CSCLayer;
21 
22 class CSCChamber : public GeomDet {
23 
24 public:
25 
26  CSCChamber( const BoundPlane::BoundPlanePointer bp, CSCDetId id, const CSCChamberSpecs* specs ) :
27  GeomDet( bp ), theChamberSpecs( specs ),
29  setDetId(id);
30  }
31 
32  ~CSCChamber();
33 
34  const GeomDetType& type() const { return *(specs()); }
35 
37  CSCDetId id() const { return geographicalId(); }
38 
39  // Which subdetector
41 
42  const CSCChamberSpecs* specs() const { return theChamberSpecs; }
43 
45  virtual std::vector< const GeomDet* > components() const;
46 
48  virtual const GeomDet* component(DetId id) const;
49 
50 
51  // Extension of the interface
52 
54  void addComponent( int n, const CSCLayer* gd );
55 
57  const std::vector< const CSCLayer* >& layers() const { return theComponents; }
58 
60  const CSCLayer* layer(CSCDetId id) const;
61 
64  const CSCLayer* layer(int ilay) const;
65 
66 private:
67 
69  std::vector< const CSCLayer* > theComponents; // the 6 CSCLayers comprising a CSCChamber; are owned by this class
70 };
71 
72 #endif // Geometry_CSCGeometry_CSCChamber_H
const std::vector< const CSCLayer * > & layers() const
Return all layers.
Definition: CSCChamber.h:57
const GeomDetType & type() const
Definition: CSCChamber.h:34
void setDetId(DetId id)
Definition: GeomDet.h:97
CSCDetId id() const
Get the (concrete) DetId.
Definition: CSCChamber.h:37
void addComponent(int n, const CSCLayer *gd)
Add a layer.
Definition: CSCChamber.cc:31
virtual std::vector< const GeomDet * > components() const
Return the layers in this chamber.
Definition: CSCChamber.cc:21
std::vector< const CSCLayer * > theComponents
Definition: CSCChamber.h:69
const CSCChamberSpecs * specs() const
Definition: CSCChamber.h:42
const CSCLayer * layer(CSCDetId id) const
Return the layer corresponding to the given id.
Definition: CSCChamber.cc:39
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:72
CSCChamber(const BoundPlane::BoundPlanePointer bp, CSCDetId id, const CSCChamberSpecs *specs)
Definition: CSCChamber.h:26
virtual const GeomDet * component(DetId id) const
Return the layer with a given id in this chamber.
Definition: CSCChamber.cc:26
Definition: DetId.h:18
string const
Definition: compareJSON.py:14
const CSCChamberSpecs * theChamberSpecs
Definition: CSCChamber.h:68
virtual SubDetector subDetector() const
Which subdetector.
Definition: CSCChamber.h:40