CMS 3D CMS Logo

MuonCkfTrajectoryBuilderESProducer Class Reference

#include <RecoMuon/L3TrackFinder/interface/MuonCkfTrajectoryBuilderESProducer.h>

Inheritance diagram for MuonCkfTrajectoryBuilderESProducer:

edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Member Functions

 MuonCkfTrajectoryBuilderESProducer (const edm::ParameterSet &p)
boost::shared_ptr
< TrajectoryBuilder
produce (const CkfComponentsRecord &)
virtual ~MuonCkfTrajectoryBuilderESProducer ()

Private Attributes

boost::shared_ptr
< TrajectoryBuilder
_trajectoryBuilder
edm::ParameterSet pset_


Detailed Description

Definition at line 9 of file MuonCkfTrajectoryBuilderESProducer.h.


Constructor & Destructor Documentation

MuonCkfTrajectoryBuilderESProducer::MuonCkfTrajectoryBuilderESProducer ( const edm::ParameterSet p  ) 

Definition at line 26 of file MuonCkfTrajectoryBuilderESProducer.cc.

References edm::ParameterSet::getParameter(), pset_, and edm::ESProducer::setWhatProduced().

00027 { 
00028   std::string myName = p.getParameter<std::string>("ComponentName");
00029   pset_ = p;
00030   setWhatProduced(this,myName);
00031 }

MuonCkfTrajectoryBuilderESProducer::~MuonCkfTrajectoryBuilderESProducer (  )  [virtual]

Definition at line 33 of file MuonCkfTrajectoryBuilderESProducer.cc.

00033 {}


Member Function Documentation

boost::shared_ptr< TrajectoryBuilder > MuonCkfTrajectoryBuilderESProducer::produce ( const CkfComponentsRecord iRecord  ) 

Definition at line 36 of file MuonCkfTrajectoryBuilderESProducer.cc.

References _trajectoryBuilder, edm::eventsetup::EventSetupRecordImplementation< T >::get(), edm::ParameterSet::getParameter(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), HLT_VtxMuL3::measurementTrackerName, MuonCkfTrajectoryBuilderESProducer_cfi::MuonCkfTrajectoryBuilder, edm::ESHandle< T >::product(), and pset_.

00037 { 
00038   std::string updatorName            = pset_.getParameter<std::string>("updator");   
00039   std::string propagatorAlongName    = pset_.getParameter<std::string>("propagatorAlong");
00040   std::string propagatorOppositeName = pset_.getParameter<std::string>("propagatorOpposite");   
00041   std::string propagatorProximityName = pset_.getParameter<std::string>("propagatorProximity");   
00042   std::string estimatorName          = pset_.getParameter<std::string>("estimator"); 
00043   std::string recHitBuilderName      = pset_.getParameter<std::string>("TTRHBuilder");     
00044   std::string measurementTrackerName = pset_.getParameter<std::string>("MeasurementTrackerName");
00045   std::string filterName             = pset_.getParameter<std::string>("trajectoryFilterName");
00046 
00047   edm::ESHandle<TrajectoryStateUpdator> updatorHandle;
00048   edm::ESHandle<Propagator>             propagatorAlongHandle;
00049   edm::ESHandle<Propagator>             propagatorOppositeHandle;
00050   edm::ESHandle<Propagator>             propagatorProximityHandle;
00051   edm::ESHandle<Chi2MeasurementEstimatorBase>   estimatorHandle;
00052   edm::ESHandle<TransientTrackingRecHitBuilder> recHitBuilderHandle;
00053   edm::ESHandle<MeasurementTracker>             measurementTrackerHandle;
00054   edm::ESHandle<TrajectoryFilter>               trajectoryFilterHandle;
00055 
00056   iRecord.getRecord<TrackingComponentsRecord>().get(updatorName,updatorHandle);
00057   iRecord.getRecord<TrackingComponentsRecord>().get(propagatorAlongName,propagatorAlongHandle);
00058   iRecord.getRecord<TrackingComponentsRecord>().get(propagatorOppositeName,propagatorOppositeHandle);
00059   iRecord.getRecord<TrackingComponentsRecord>().get(propagatorProximityName,propagatorProximityHandle);
00060   iRecord.getRecord<TrackingComponentsRecord>().get(estimatorName,estimatorHandle);  
00061   iRecord.getRecord<TransientRecHitRecord>().get(recHitBuilderName,recHitBuilderHandle);  
00062   iRecord.get(measurementTrackerName, measurementTrackerHandle);  
00063   iRecord.getRecord<TrajectoryFilter::Record>().get(filterName,trajectoryFilterHandle);
00064     
00065   _trajectoryBuilder  = 
00066     boost::shared_ptr<TrajectoryBuilder>(new MuonCkfTrajectoryBuilder(pset_,
00067                                                                       updatorHandle.product(),
00068                                                                       propagatorAlongHandle.product(),
00069                                                                       propagatorOppositeHandle.product(),
00070                                                                       propagatorProximityHandle.product(),
00071                                                                       estimatorHandle.product(),
00072                                                                       recHitBuilderHandle.product(),
00073                                                                       measurementTrackerHandle.product(),
00074                                                                       trajectoryFilterHandle.product()) );  
00075   return _trajectoryBuilder;
00076 }


Member Data Documentation

boost::shared_ptr<TrajectoryBuilder> MuonCkfTrajectoryBuilderESProducer::_trajectoryBuilder [private]

Definition at line 15 of file MuonCkfTrajectoryBuilderESProducer.h.

Referenced by produce().

edm::ParameterSet MuonCkfTrajectoryBuilderESProducer::pset_ [private]

Definition at line 16 of file MuonCkfTrajectoryBuilderESProducer.h.

Referenced by MuonCkfTrajectoryBuilderESProducer(), and produce().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:28:41 2009 for CMSSW by  doxygen 1.5.4