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 {
12  class ParameterSet;
13 }
14 
15 class CaloGeometry;
16 class HGCalGeometry;
18 class TrackerGeometry;
19 class FastTimeGeometry;
20 class FWRecoGeometry;
22 class GeomDet;
23 
25 {
26 public:
28  ~FWRecoGeometryESProducer( void ) override;
29 
30  std::unique_ptr<FWRecoGeometry> produce( const FWRecoGeometryRecord& );
31 
32 private:
34  const FWRecoGeometryESProducer& operator=( const FWRecoGeometryESProducer& ) = delete;
35 
36  void addCSCGeometry( FWRecoGeometry& );
37  void addDTGeometry( FWRecoGeometry& );
38  void addRPCGeometry( FWRecoGeometry& );
39  void addGEMGeometry( FWRecoGeometry& );
40  void addME0Geometry( FWRecoGeometry& );
41  void addPixelBarrelGeometry( FWRecoGeometry& );
42  void addPixelForwardGeometry( FWRecoGeometry& );
43  void addTIBGeometry( FWRecoGeometry& );
44  void addTOBGeometry( FWRecoGeometry& );
45  void addTIDGeometry( FWRecoGeometry& );
46  void addTECGeometry( FWRecoGeometry& );
47  void addCaloGeometry( FWRecoGeometry& );
48 
49  void addFTLGeometry( FWRecoGeometry& );
50 
51 
52 
53  void ADD_PIXEL_TOPOLOGY( unsigned int rawid, const GeomDet* detUnit, FWRecoGeometry& );
54 
55 
56  unsigned int insert_id( unsigned int id, FWRecoGeometry& );
57  void fillPoints( unsigned int id,
58  std::vector<GlobalPoint>::const_iterator begin,
59  std::vector<GlobalPoint>::const_iterator end,
60  FWRecoGeometry& );
61  void fillShapeAndPlacement( unsigned int id, const GeomDet *det, FWRecoGeometry& );
62  void writeTrackerParametersXML(FWRecoGeometry&);
63 
67  std::vector<edm::ESHandle<HGCalGeometry> > m_hgcalGeoms;
69 
70  unsigned int m_current;
71  bool m_tracker;
72  bool m_muon;
73  bool m_calo;
74  bool m_timing;
75 };
76 
77 #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.