CMS 3D CMS Logo

DTLayer.h

Go to the documentation of this file.
00001 #ifndef DTLAYER_H
00002 #define DTLAYER_H
00003 
00017 /* Base Class Headers */
00018 #include "Geometry/CommonDetUnit/interface/GeomDetUnit.h"
00019 
00020 /* Collaborating Class Declarations */
00021 #include "DataFormats/MuonDetId/interface/DTLayerId.h"
00022 #include "Geometry/DTGeometry/interface/DTTopology.h"
00023 #include "Geometry/DTGeometry/interface/DTLayerType.h"
00024 class DTSuperLayer;
00025 class DTChamber;
00026 
00027 
00028 class DTLayer : public GeomDetUnit {
00029 
00030   public:
00031 
00032 /* Constructor */ 
00033     DTLayer(DTLayerId id,
00034             ReferenceCountingPointer<BoundPlane>& plane,
00035             const DTTopology& topo,
00036             const DTLayerType& type,
00037             const DTSuperLayer* sl=0) ;
00038 
00039 /* Destructor */ 
00040     virtual ~DTLayer() ;
00041 
00042 /* Operations */ 
00043     const Topology& topology() const;
00044 
00045     const GeomDetType& type() const;
00046 
00047     const DTTopology& specificTopology() const;
00048 
00050     virtual DetId geographicalId() const;
00051 
00053     DTLayerId id() const;
00054 
00057     const DTSuperLayer* superLayer() const ;
00058 
00061     const DTChamber* chamber() const;
00062 
00064     bool operator==(const DTLayer& l) const;
00065 
00067     virtual std::vector< const GeomDet*> components() const;
00068 
00069   private:
00070     DTLayerId   theId;
00071     DTTopology  theTopo;
00072     DTLayerType theType;
00073 
00074     const DTSuperLayer*   theSL;
00075   protected:
00076 
00077 };
00078 #endif // DTLAYER_H
00079 

Generated on Tue Jun 9 17:37:20 2009 for CMSSW by  doxygen 1.5.4