File indexing completed on 2024-04-06 12:14:40
0001 #ifndef Geometry_GEMGeometry_ME0GeometryParsFromDD_H
0002 #define Geometry_GEMGeometry_ME0GeometryParsFromDD_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include <vector>
0014
0015 class DDCompactView;
0016 class DDFilteredView;
0017 namespace cms {
0018 class DDFilteredView;
0019 class DDCompactView;
0020 }
0021 class MuonGeometryConstants;
0022 class RecoIdealGeometry;
0023 class ME0DetId;
0024
0025 class ME0GeometryParsFromDD {
0026 public:
0027 ME0GeometryParsFromDD(void) {}
0028
0029 ~ME0GeometryParsFromDD(void) {}
0030
0031 void build(const DDCompactView*, const MuonGeometryConstants&, RecoIdealGeometry&);
0032
0033 void build(const cms::DDCompactView*, const MuonGeometryConstants&, RecoIdealGeometry&);
0034
0035 private:
0036
0037 void buildGeometry(DDFilteredView&, const MuonGeometryConstants&, RecoIdealGeometry&);
0038
0039 void buildChamber(DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0040 void buildLayer(DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0041 void buildEtaPartition(DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0042
0043 std::vector<double> getDimension(DDFilteredView& fv);
0044 std::vector<double> getTranslation(DDFilteredView& fv);
0045 std::vector<double> getRotation(DDFilteredView& fv);
0046
0047
0048
0049 void buildGeometry(cms::DDFilteredView&, const MuonGeometryConstants&, RecoIdealGeometry&);
0050
0051 void buildChamber(cms::DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0052 void buildLayer(cms::DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0053 void buildEtaPartition(cms::DDFilteredView& fv, ME0DetId detId, RecoIdealGeometry& rgeo);
0054
0055 std::vector<double> getDimension(cms::DDFilteredView& fv);
0056 std::vector<double> getTranslation(cms::DDFilteredView& fv);
0057 std::vector<double> getRotation(cms::DDFilteredView& fv);
0058 };
0059 #endif