CMS 3D CMS Logo

ME0GeometryBuilder.h
Go to the documentation of this file.
1 #ifndef Geometry_GEMGeometry_ME0GeometryBuilder_H
2 #define Geometry_GEMGeometry_ME0GeometryBuilder_H
3 /*
4 //\class ME0GeometryBuilder
5 
6  Description: ME0 Geometry builder for DD4HEP
7  DD4hep part added to the original old file (DD version) made by M. Maggi (INFN Bari)
8 //
9 // Author: Sergio Lo Meo (sergio.lo.meo@cern.ch) following what Ianna Osborne made for DTs (DD4HEP migration)
10 // Created: 29 Apr 2019
11 */
12 
14 #include <string>
15 #include <map>
16 #include <vector>
17 
18 class DDCompactView;
19 class DDFilteredView;
20 namespace cms {
21  class DDFilteredView;
22  class DDCompactView;
23  class MuonNumbering;
24  struct DDSpecPar;
25  struct DDSpecParRegistry;
26 } // namespace cms
27 class ME0Geometry;
28 class ME0DetId;
29 class ME0Chamber;
30 class ME0Layer;
31 class ME0EtaPartition;
33 
35 public:
37 
39 
40  ME0Geometry* build(const DDCompactView* cview, const MuonGeometryConstants& muonConstants);
41  //dd4hep
42  ME0Geometry* build(const cms::DDCompactView* cview, const cms::MuonNumbering& muonConstants);
43 
44 private:
45  ME0Geometry* buildGeometry(DDFilteredView& fview, const MuonGeometryConstants& muonConstants);
46  std::map<ME0DetId, std::vector<ME0DetId>> chids;
47 
49 
50  ME0BoundPlane boundPlane(const DDFilteredView& fv, Bounds* bounds, bool isOddChamber) const;
51 
53 
54  ME0Layer* buildLayer(DDFilteredView& fv, ME0DetId detId) const;
55 
57  //dd4hep
58  ME0Geometry* buildGeometry(cms::DDFilteredView& fview, const cms::MuonNumbering& muonConstants);
59 
60  ME0BoundPlane boundPlane(const cms::DDFilteredView& fv, Bounds* bounds, bool isOddChamber) const;
61 
63 
65 
67 };
68 
69 #endif
MuonGeometryConstants
Definition: MuonGeometryConstants.h:20
ME0Geometry
Definition: ME0Geometry.h:12
Bounds
Definition: Bounds.h:18
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
cms::DDFilteredView
Definition: DDFilteredView.h:65
ME0GeometryBuilder::ME0GeometryBuilder
ME0GeometryBuilder()
Definition: ME0GeometryBuilder.cc:38
Plane.h
DDCompactView
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:80
ME0GeometryBuilder::~ME0GeometryBuilder
~ME0GeometryBuilder()
Definition: ME0GeometryBuilder.cc:40
ME0GeometryBuilder::buildChamber
ME0Chamber * buildChamber(DDFilteredView &fv, ME0DetId detId) const
Definition: ME0GeometryBuilder.cc:226
ME0Layer
Definition: ME0Layer.h:9
cms::MuonNumbering
Definition: DD4hep_MuonNumbering.h:37
ME0Chamber
Definition: ME0Chamber.h:10
ME0GeometryBuilder::ME0BoundPlane
ReferenceCountingPointer< BoundPlane > ME0BoundPlane
Definition: ME0GeometryBuilder.h:48
ME0GeometryBuilder
Definition: ME0GeometryBuilder.h:34
ME0DetId
Definition: ME0DetId.h:16
ME0GeometryBuilder::build
ME0Geometry * build(const DDCompactView *cview, const MuonGeometryConstants &muonConstants)
Definition: ME0GeometryBuilder.cc:42
ME0GeometryBuilder::buildEtaPartition
ME0EtaPartition * buildEtaPartition(DDFilteredView &fv, ME0DetId detId) const
Definition: ME0GeometryBuilder.cc:280
cms::DDCompactView
Definition: DDCompactView.h:29
DDFilteredView
Definition: DDFilteredView.h:20
MuonNumbering
ME0GeometryBuilder::buildLayer
ME0Layer * buildLayer(DDFilteredView &fv, ME0DetId detId) const
Definition: ME0GeometryBuilder.cc:253
ME0GeometryBuilder::buildGeometry
ME0Geometry * buildGeometry(DDFilteredView &fview, const MuonGeometryConstants &muonConstants)
Definition: ME0GeometryBuilder.cc:62
ME0GeometryBuilder::boundPlane
ME0BoundPlane boundPlane(const DDFilteredView &fv, Bounds *bounds, bool isOddChamber) const
Definition: ME0GeometryBuilder.cc:333
ME0GeometryBuilder::chids
std::map< ME0DetId, std::vector< ME0DetId > > chids
Definition: ME0GeometryBuilder.h:46
ME0EtaPartition
Definition: ME0EtaPartition.h:12
cms
Namespace of DDCMS conversion namespace.
Definition: ProducerAnalyzer.cc:21