CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_8_patch3/src/RecoMuon/DetLayers/src/MuonCSCDetLayerGeometryBuilder.h

Go to the documentation of this file.
00001 #ifndef MuonCSCDetLayerGeometryBuilder_h
00002 #define MuonCSCDetLayerGeometryBuilder_h
00003 
00013 #include <Geometry/CSCGeometry/interface/CSCGeometry.h>
00014 #include <vector>
00015 
00016 class DetLayer;
00017 class MuRingForwardDoubleLayer;
00018 class MuDetRing;
00019 
00020 class MuonCSCDetLayerGeometryBuilder {
00021  public:
00022 
00025   static std::pair<std::vector<DetLayer*>, std::vector<DetLayer*> > buildLayers(const CSCGeometry& geo);
00026  private:
00027   // Disable constructor - only static access is allowed.
00028   MuonCSCDetLayerGeometryBuilder(){}
00029 
00030   static MuRingForwardDoubleLayer* buildLayer(int endcap,
00031                                         int station,
00032                                         std::vector<int>& rings,
00033                                         const CSCGeometry& geo);
00034 
00035   static MuDetRing * makeDetRing(std::vector<const GeomDet*> & geomDets);
00036   static bool isFront(int station, int ring, int chamber);
00037 };
00038 #endif
00039