CMS 3D CMS Logo

GEMGeometryBuilder.h
Go to the documentation of this file.
1 #ifndef Geometry_GEMGeometry_GEMGeometryBuilder_H
2 #define Geometry_GEMGeometry_GEMGeometryBuilder_H
3 
5 /*
6 //\class GEMGeometryBuilder
7 
8  Description: GEM Geometry builder from DD & DD4HEP
9  DD4hep part added to the original old file (DD version) made by M. Maggi (INFN Bari)
10 //
11 // Author: Sergio Lo Meo (sergio.lo.meo@cern.ch) following what Ianna Osburne made for DTs (DD4HEP migration)
12 // Created: 27 Jan 2020
13 */
14 #include <string>
15 #include <map>
16 #include <vector>
18 
19 class DDCompactView;
20 class DDFilteredView;
21 namespace cms {
22  class DDFilteredView;
23  class DDCompactView;
24  class MuonNumbering;
25 } // namespace cms
26 class GEMGeometry;
27 class GEMSuperChamber;
28 class GEMChamber;
29 class GEMEtaPartition;
31 
33 public:
35 
37 
38  // for DDD
39  void build(GEMGeometry& theGeometry, const DDCompactView* cview, const MuonGeometryConstants& muonConstants);
40  // for DD4hep
41  void build(GEMGeometry& theGeometry, const cms::DDCompactView* cview, const MuonGeometryConstants& muonConstants);
42 
43 private:
44  std::map<GEMDetId, std::vector<GEMDetId>> chids;
45 
46  // for DDD
48 
49  RCPBoundPlane boundPlane(const DDFilteredView& fv, Bounds* bounds, bool isOddChamber) const;
50 
52 
54 
56 
57  // for DD4hep
58 
59  RCPBoundPlane boundPlane(const cms::DDFilteredView& fv, Bounds* bounds, bool isOddChamber) const;
60 
62 
64 
66 
67  // Common
68  void buildRegions(GEMGeometry&, const std::vector<GEMSuperChamber*>&);
69 };
70 
71 #endif
GEMGeometryBuilder::boundPlane
RCPBoundPlane boundPlane(const DDFilteredView &fv, Bounds *bounds, bool isOddChamber) const
Definition: GEMGeometryBuilder.cc:275
MuonGeometryConstants
Definition: MuonGeometryConstants.h:20
GEMGeometryBuilder::buildRegions
void buildRegions(GEMGeometry &, const std::vector< GEMSuperChamber * > &)
Definition: GEMGeometryBuilder.cc:493
GEMSuperChamber
Definition: GEMSuperChamber.h:19
GEMEtaPartition
Definition: GEMEtaPartition.h:12
Bounds
Definition: Bounds.h:18
GEMGeometryBuilder::chids
std::map< GEMDetId, std::vector< GEMDetId > > chids
Definition: GEMGeometryBuilder.h:44
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
cms::DDFilteredView
Definition: DDFilteredView.h:70
GEMGeometryBuilder::GEMGeometryBuilder
GEMGeometryBuilder()
Definition: GEMGeometryBuilder.cc:43
Plane.h
GEMGeometryBuilder::buildChamber
GEMChamber * buildChamber(DDFilteredView &fv, GEMDetId detId) const
Definition: GEMGeometryBuilder.cc:194
GEMGeometryBuilder::buildEtaPartition
GEMEtaPartition * buildEtaPartition(DDFilteredView &fv, GEMDetId detId) const
Definition: GEMGeometryBuilder.cc:223
DDCompactView
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
GEMGeometryBuilder
Definition: GEMGeometryBuilder.h:32
GEMDetId
Definition: GEMDetId.h:18
GEMGeometryBuilder::RCPBoundPlane
ReferenceCountingPointer< BoundPlane > RCPBoundPlane
Definition: GEMGeometryBuilder.h:47
GEMGeometryBuilder::~GEMGeometryBuilder
~GEMGeometryBuilder()
Definition: GEMGeometryBuilder.cc:45
GEMGeometryBuilder::buildSuperChamber
GEMSuperChamber * buildSuperChamber(DDFilteredView &fv, GEMDetId detId) const
Definition: GEMGeometryBuilder.cc:160
GEMGeometryBuilder::build
void build(GEMGeometry &theGeometry, const DDCompactView *cview, const MuonGeometryConstants &muonConstants)
Definition: GEMGeometryBuilder.cc:48
GEMChamber
Definition: GEMChamber.h:19
GEMDetId.h
cms::DDCompactView
Definition: DDCompactView.h:31
DDFilteredView
Definition: DDFilteredView.h:20
MuonNumbering
GEMGeometry
Definition: GEMGeometry.h:24
cms
Namespace of DDCMS conversion namespace.
Definition: ProducerAnalyzer.cc:21