CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/RecoMuon/TransientTrackingRecHit/plugins/MuonTransientTrackingRecHitBuilderESProducer.cc

Go to the documentation of this file.
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