File indexing completed on 2024-04-06 12:26:53
0001 #ifndef MuonME0DetLayerGeometryBuilder_h
0002 #define MuonME0DetLayerGeometryBuilder_h
0003
0004
0005
0006
0007
0008
0009
0010
0011 class DetLayer;
0012
0013 class MuRingForwardLayer;
0014
0015 class MuDetRing;
0016
0017 #include <Geometry/GEMGeometry/interface/ME0Geometry.h>
0018 #include "RecoMuon/DetLayers/interface/MuDetRod.h"
0019 #include <vector>
0020
0021 class MuonME0DetLayerGeometryBuilder {
0022 public:
0023
0024 MuonME0DetLayerGeometryBuilder() {}
0025
0026
0027 virtual ~MuonME0DetLayerGeometryBuilder();
0028
0029
0030
0031 static std::pair<std::vector<DetLayer*>, std::vector<DetLayer*> > buildEndcapLayers(const ME0Geometry& geo);
0032
0033 private:
0034
0035
0036 static MuRingForwardLayer* buildLayer(
0037 int endcap, int layer, std::vector<int>& chambers, std::vector<int>& rolls, const ME0Geometry& geo);
0038 static bool isFront(const ME0DetId& me0Id);
0039 static MuDetRing* makeDetRing(std::vector<const GeomDet*>& geomDets);
0040 };
0041 #endif