CMS 3D CMS Logo

Public Member Functions | Private Attributes

CkfTrajectoryBuilderESProducer Class Reference

#include <CkfTrajectoryBuilderESProducer.h>

Inheritance diagram for CkfTrajectoryBuilderESProducer:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Member Functions

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

Private Attributes

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

Detailed Description

Definition at line 10 of file CkfTrajectoryBuilderESProducer.h.


Constructor & Destructor Documentation

CkfTrajectoryBuilderESProducer::CkfTrajectoryBuilderESProducer ( const edm::ParameterSet p)

Definition at line 26 of file CkfTrajectoryBuilderESProducer.cc.

References edm::ParameterSet::getParameter(), and AlCaHLTBitMon_ParallelJobs::p.

{ 
  std::string myName = p.getParameter<std::string>("ComponentName");
  pset_ = p;
  setWhatProduced(this,myName);
}
CkfTrajectoryBuilderESProducer::~CkfTrajectoryBuilderESProducer ( ) [virtual]

Definition at line 33 of file CkfTrajectoryBuilderESProducer.cc.

{}

Member Function Documentation

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

Definition at line 36 of file CkfTrajectoryBuilderESProducer.cc.

References CkfTrajectoryBuilderESProducer_cfi::CkfTrajectoryBuilder, reco_skim_cfg_mod::filterName, edm::eventsetup::EventSetupRecord::get(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), PixelTracksForL3Isolation_cfi::measurementTrackerName, and edm::ESHandle< T >::product().

{ 
  std::string updatorName            = pset_.getParameter<std::string>("updator");   
  std::string propagatorAlongName    = pset_.getParameter<std::string>("propagatorAlong");
  std::string propagatorOppositeName = pset_.getParameter<std::string>("propagatorOpposite");   
  std::string estimatorName          = pset_.getParameter<std::string>("estimator"); 
  std::string recHitBuilderName      = pset_.getParameter<std::string>("TTRHBuilder");     
  std::string measurementTrackerName = pset_.getParameter<std::string>("MeasurementTrackerName");     
  std::string filterName = pset_.getParameter<std::string>("trajectoryFilterName");
  

  edm::ESHandle<TrajectoryStateUpdator> updatorHandle;
  edm::ESHandle<Propagator>             propagatorAlongHandle;
  edm::ESHandle<Propagator>             propagatorOppositeHandle;
  edm::ESHandle<Chi2MeasurementEstimatorBase>   estimatorHandle;
  edm::ESHandle<TransientTrackingRecHitBuilder> recHitBuilderHandle;
  edm::ESHandle<MeasurementTracker>             measurementTrackerHandle;
  edm::ESHandle<TrajectoryFilter> filterHandle;

  iRecord.getRecord<TrackingComponentsRecord>().get(updatorName,updatorHandle);
  iRecord.getRecord<TrackingComponentsRecord>().get(propagatorAlongName,propagatorAlongHandle);
  iRecord.getRecord<TrackingComponentsRecord>().get(propagatorOppositeName,propagatorOppositeHandle);
  iRecord.getRecord<TrackingComponentsRecord>().get(estimatorName,estimatorHandle);  
  iRecord.getRecord<TransientRecHitRecord>().get(recHitBuilderName,recHitBuilderHandle);  
  iRecord.get(measurementTrackerName, measurementTrackerHandle);
  iRecord.get(filterName, filterHandle);

  _trajectoryBuilder  = 
    boost::shared_ptr<TrajectoryBuilder>(new CkfTrajectoryBuilder(pset_,
                                                                  updatorHandle.product(),
                                                                  propagatorAlongHandle.product(),
                                                                  propagatorOppositeHandle.product(),
                                                                  estimatorHandle.product(),
                                                                  recHitBuilderHandle.product(),
                                                                  measurementTrackerHandle.product(),
                                                                  filterHandle.product()) );  
  return _trajectoryBuilder;
}

Member Data Documentation

Definition at line 16 of file CkfTrajectoryBuilderESProducer.h.

Definition at line 17 of file CkfTrajectoryBuilderESProducer.h.