File indexing completed on 2024-04-06 12:26:53
0001 #ifndef MuonCSCDetLayerGeometryBuilder_h
0002 #define MuonCSCDetLayerGeometryBuilder_h
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <Geometry/CSCGeometry/interface/CSCGeometry.h>
0012 #include <vector>
0013
0014 class DetLayer;
0015 class MuRingForwardDoubleLayer;
0016 class MuDetRing;
0017
0018 class MuonCSCDetLayerGeometryBuilder {
0019 public:
0020
0021
0022 static std::pair<std::vector<DetLayer*>, std::vector<DetLayer*> > buildLayers(const CSCGeometry& geo);
0023
0024 private:
0025
0026 MuonCSCDetLayerGeometryBuilder() {}
0027
0028 static MuRingForwardDoubleLayer* buildLayer(int endcap, int station, std::vector<int>& rings, const CSCGeometry& geo);
0029
0030 static MuDetRing* makeDetRing(std::vector<const GeomDet*>& geomDets);
0031 static bool isFront(int station, int ring, int chamber);
0032 };
0033 #endif