CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GEMGeometryParsFromDD.h
Go to the documentation of this file.
1 #ifndef Geometry_GEMGeometry_GEMGeometryParsFromDD_H
2 #define Geometry_GEMGeometry_GEMGeometryParsFromDD_H
3 
4 /* Implementation of the GEMGeometryParsFromDD Class
5  * Build the GEMGeometry from the DDD and DD4hep description
6  *
7  * DD4hep part added to the original old file (DD version) made by M. Maggi (INFN Bari)
8  * Author: Sergio Lo Meo (sergio.lo.meo@cern.ch)
9  * Created: Mon, 15 Feb 2021
10  *
11  */
12 
13 #include <string>
14 #include <vector>
15 #include <map>
16 #include <list>
17 
18 class DDCompactView;
19 class DDFilteredView;
20 namespace cms { // DD4hep
21  class DDFilteredView;
22  class DDCompactView;
23 } // namespace cms
25 class RecoIdealGeometry;
26 class GEMDetId;
27 
29 public:
31 
33 
34  // DD
35  void build(const DDCompactView* cview, const MuonGeometryConstants& muonConstants, RecoIdealGeometry& rgeo);
36  // DD4hep
37  void build(const cms::DDCompactView* cview, const MuonGeometryConstants& muonConstants, RecoIdealGeometry& rgeo);
38 
39 private:
40  // DD
41  void buildGeometry(DDFilteredView& fview,
42  DDFilteredView& fview2,
43  const MuonGeometryConstants& muonConstants,
44  RecoIdealGeometry& rgeo);
46  void buildChamber(DDFilteredView& fv, GEMDetId detId, RecoIdealGeometry& rgeo);
48 
49  std::vector<double> getTranslation(DDFilteredView& fv);
50  std::vector<double> getRotation(DDFilteredView& fv);
51 
52  // DD4hep
53 
54  void buildGeometry(cms::DDFilteredView& fview, const MuonGeometryConstants& muonConstants, RecoIdealGeometry& rgeo);
58 
59  std::vector<double> getTranslation(cms::DDFilteredView& fv);
60  std::vector<double> getRotation(cms::DDFilteredView& fv);
61 };
62 #endif
void buildEtaPartition(DDFilteredView &fv, GEMDetId detId, RecoIdealGeometry &rgeo)
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
std::vector< double > getRotation(DDFilteredView &fv)
void buildChamber(DDFilteredView &fv, GEMDetId detId, RecoIdealGeometry &rgeo)
void buildGeometry(DDFilteredView &fview, DDFilteredView &fview2, const MuonGeometryConstants &muonConstants, RecoIdealGeometry &rgeo)
std::vector< double > getTranslation(DDFilteredView &fv)
void buildSuperChamber(DDFilteredView &fv, GEMDetId detId, RecoIdealGeometry &rgeo)
void build(const DDCompactView *cview, const MuonGeometryConstants &muonConstants, RecoIdealGeometry &rgeo)