CMS 3D CMS Logo

MuonServiceProxy.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackingTools_MuonServiceProxy_H
2 #define RecoMuon_TrackingTools_MuonServiceProxy_H
3 
18 
24 
25 namespace edm {
26  class ParameterSet;
27  class EventSetup;
28 } // namespace edm
29 
31 public:
34 
36  virtual ~MuonServiceProxy();
37 
38  // Operations
39 
41  void update(const edm::EventSetup& setup);
42 
44  edm::ESHandle<MagneticField> magneticField() const { return theMGField; }
45 
47  edm::ESHandle<GlobalTrackingGeometry> trackingGeometry() const { return theTrackingGeometry; }
48 
50  edm::ESHandle<MuonDetLayerGeometry> detLayerGeometry() const { return theDetLayerGeometry; }
51 
54 
56  const edm::EventSetup& eventSetup() const { return *theEventSetup; }
57 
59  bool isTrackingComponentsRecordChanged() const { return theChangeInTrackingComponentsRecord; }
60 
61  const MuonNavigationSchool* muonNavigationSchool() const { return theSchool; }
62 
63 protected:
64 private:
65  typedef std::map<std::string, edm::ESHandle<Propagator> > propagators;
66 
77 
78  propagators thePropagators;
79 
80  unsigned long long theCacheId_GTG;
81  unsigned long long theCacheId_MG;
82  unsigned long long theCacheId_DG;
83  unsigned long long theCacheId_P;
84 
86 };
87 #endif
std::map< std::string, edm::ESHandle< Propagator > > propagators
edm::ESHandle< MuonDetLayerGeometry > detLayerGeometry() const
get the detLayer geometry
unsigned long long theCacheId_MG
const edm::EventSetup & eventSetup() const
get the whole EventSetup
unsigned long long theCacheId_P
edm::ESHandle< MagneticField > magneticField() const
get the magnetic field
edm::ESHandle< MagneticField > theMGField
bool theChangeInTrackingComponentsRecord
unsigned long long theCacheId_DG
const MuonNavigationSchool * theSchool
edm::ESHandle< GlobalTrackingGeometry > theTrackingGeometry
propagators thePropagators
const edm::EventSetup * theEventSetup
unsigned long long theCacheId_GTG
edm::ESHandle< GlobalTrackingGeometry > trackingGeometry() const
get the tracking geometry
HLT enums.
#define update(a, b)
edm::ESHandle< MuonDetLayerGeometry > theDetLayerGeometry
const MuonNavigationSchool * muonNavigationSchool() const
bool isTrackingComponentsRecordChanged() const
check if the MuonReco Geometry has been changed