00001 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00002 #include "TrackingTools/Records/interface/TransientRecHitRecord.h" 00003 00004 #include "RecoMuon/TransientTrackingRecHit/plugins/MuonTransientTrackingRecHitBuilderESProducer.h" 00005 #include "RecoMuon/TransientTrackingRecHit/interface/MuonTransientTrackingRecHitBuilder.h" 00006 00007 #include "FWCore/Framework/interface/EventSetup.h" 00008 #include "FWCore/Framework/interface/ESHandle.h" 00009 00010 #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h" 00011 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h" 00012 #include "TrackingTools/Records/interface/TransientRecHitRecord.h" 00013 00014 using namespace edm; 00015 using namespace std; 00016 00017 MuonTransientTrackingRecHitBuilderESProducer::MuonTransientTrackingRecHitBuilderESProducer(const ParameterSet & parameterSet) { 00018 00019 setWhatProduced(this,parameterSet.getParameter<string>("ComponentName")); 00020 } 00021 00022 MuonTransientTrackingRecHitBuilderESProducer::~MuonTransientTrackingRecHitBuilderESProducer() {} 00023 00024 00025 boost::shared_ptr<TransientTrackingRecHitBuilder> 00026 MuonTransientTrackingRecHitBuilderESProducer::produce(const TransientRecHitRecord& iRecord){ 00027 00028 00029 ESHandle<GlobalTrackingGeometry> trackingGeometry; 00030 iRecord.getRecord<GlobalTrackingGeometryRecord>().get(trackingGeometry); 00031 00032 return boost::shared_ptr<TransientTrackingRecHitBuilder>(new MuonTransientTrackingRecHitBuilder(trackingGeometry)); 00033 } 00034 00035