CMS 3D CMS Logo

FWRecoGeometryESProducer.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_FWRECO_GEOMETRY_ES_PRODUCER_H
2 #define GEOMETRY_FWRECO_GEOMETRY_ES_PRODUCER_H
3 
4 #include <memory>
5 
9 
10 namespace edm {
11  class ParameterSet;
12 }
13 
14 class CaloGeometry;
15 class HGCalGeometry;
17 class TrackerGeometry;
18 class FastTimeGeometry;
19 class FWRecoGeometry;
21 class GeomDet;
22 
24 public:
26  ~FWRecoGeometryESProducer(void) override;
27 
28  std::unique_ptr<FWRecoGeometry> produce(const FWRecoGeometryRecord&);
29 
30 private:
32  const FWRecoGeometryESProducer& operator=(const FWRecoGeometryESProducer&) = delete;
33 
34  void addCSCGeometry(FWRecoGeometry&);
35  void addDTGeometry(FWRecoGeometry&);
36  void addRPCGeometry(FWRecoGeometry&);
37  void addGEMGeometry(FWRecoGeometry&);
38  void addME0Geometry(FWRecoGeometry&);
39  void addPixelBarrelGeometry(FWRecoGeometry&);
40  void addPixelForwardGeometry(FWRecoGeometry&);
41  void addTIBGeometry(FWRecoGeometry&);
42  void addTOBGeometry(FWRecoGeometry&);
43  void addTIDGeometry(FWRecoGeometry&);
44  void addTECGeometry(FWRecoGeometry&);
45  void addCaloGeometry(FWRecoGeometry&);
46 
47  void addFTLGeometry(FWRecoGeometry&);
48 
49  void ADD_PIXEL_TOPOLOGY(unsigned int rawid, const GeomDet* detUnit, FWRecoGeometry&);
50 
51  unsigned int insert_id(unsigned int id, FWRecoGeometry&);
52  void fillPoints(unsigned int id,
53  std::vector<GlobalPoint>::const_iterator begin,
54  std::vector<GlobalPoint>::const_iterator end,
56  void fillShapeAndPlacement(unsigned int id, const GeomDet* det, FWRecoGeometry&);
57  void writeTrackerParametersXML(FWRecoGeometry&);
58 
62  std::vector<edm::ESHandle<HGCalGeometry> > m_hgcalGeoms;
64 
65  unsigned int m_current;
66  bool m_tracker;
67  bool m_muon;
68  bool m_calo;
69  bool m_timing;
70 };
71 
72 #endif // GEOMETRY_FWRECO_GEOMETRY_ES_PRODUCER_H
edm::ESHandle< GlobalTrackingGeometry > m_geomRecord
const TrackerGeometry * m_trackerGeom
edm::ESHandle< FastTimeGeometry > m_ftlEndcapGeom
#define end
Definition: vmac.h:39
std::vector< edm::ESHandle< HGCalGeometry > > m_hgcalGeoms
#define begin
Definition: vmac.h:32
HLT enums.