CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RPCGeometryBuilder.h
Go to the documentation of this file.
1 #ifndef RPCGeometry_RPCGeometryBuilder_H
2 #define RPCGeometry_RPCGeometryBuilder_H
3 /*
4 //\class RPCGeometryBuilder
5 
6  Description: RPC Geometry builder from DD & 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: Fri, 20 Sep 2019
11 // Modified: Fri, 29 May 2020, following what Sunanda Banerjee made in PR #29842 PR #29943 and Ianna Osborne in PR #29954
12 */
13 #include <string>
14 #include <map>
15 #include <list>
16 #include <memory>
18 
19 class DDCompactView;
20 class DDFilteredView;
21 namespace cms {
22  class DDFilteredView;
23  class DDCompactView;
24 } // namespace cms
25 class RPCGeometry;
26 class RPCRoll;
28 
30 public:
32 
33  // for DDD
34  std::unique_ptr<RPCGeometry> build(const DDCompactView* cview, const MuonGeometryConstants& muonConstants);
35  // for DD4hep
36  std::unique_ptr<RPCGeometry> build(const cms::DDCompactView* cview, const MuonGeometryConstants& muonConstants);
37 
38 private:
39  // for DDD
40  std::unique_ptr<RPCGeometry> buildGeometry(DDFilteredView& fview, const MuonGeometryConstants& muonConstants);
41  // for DD4hep
42  std::unique_ptr<RPCGeometry> buildGeometry(cms::DDFilteredView& fview, const MuonGeometryConstants& muonConstants);
43  std::map<RPCDetId, std::list<RPCRoll*> > chids;
44 };
45 
46 #endif
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
std::unique_ptr< RPCGeometry > buildGeometry(DDFilteredView &fview, const MuonGeometryConstants &muonConstants)
std::unique_ptr< RPCGeometry > build(const DDCompactView *cview, const MuonGeometryConstants &muonConstants)
std::map< RPCDetId, std::list< RPCRoll * > > chids