CMS 3D CMS Logo

Public Member Functions | Private Attributes

KFTrajectorySmootherESProducer Class Reference

#include <KFTrajectorySmootherESProducer.h>

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

List of all members.

Public Member Functions

 KFTrajectorySmootherESProducer (const edm::ParameterSet &p)
boost::shared_ptr
< TrajectorySmoother
produce (const TrajectoryFitterRecord &)
virtual ~KFTrajectorySmootherESProducer ()

Private Attributes

boost::shared_ptr
< TrajectorySmoother
_smoother
edm::ParameterSet pset_

Detailed Description

ESProducer for the KFTrajectorySmoother.

Date:
2009/07/03 01:10:26
Revision:
1.3
Author:
cerati

Definition at line 19 of file KFTrajectorySmootherESProducer.h.


Constructor & Destructor Documentation

KFTrajectorySmootherESProducer::KFTrajectorySmootherESProducer ( const edm::ParameterSet p)

Definition at line 20 of file KFTrajectorySmootherESProducer.cc.

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

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

Definition at line 27 of file KFTrajectorySmootherESProducer.cc.

{}

Member Function Documentation

boost::shared_ptr< TrajectorySmoother > KFTrajectorySmootherESProducer::produce ( const TrajectoryFitterRecord iRecord)

Definition at line 30 of file KFTrajectorySmootherESProducer.cc.

References edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), KFTrajectorySmootherESProducer_cfi::KFTrajectorySmoother, and edm::ESHandle< T >::product().

                                                                             { 

  std::string pname = pset_.getParameter<std::string>("Propagator");
  std::string uname = pset_.getParameter<std::string>("Updator");
  std::string ename = pset_.getParameter<std::string>("Estimator");
  std::string gname = pset_.getParameter<std::string>("RecoGeometry");
  double rescaleFactor =  pset_.getParameter<double>("errorRescaling");
  int minHits = pset_.getParameter<int>("minHits");

  edm::ESHandle<Propagator> prop;
  edm::ESHandle<TrajectoryStateUpdator> upd;
  edm::ESHandle<Chi2MeasurementEstimatorBase> est;
  edm::ESHandle<DetLayerGeometry> geo;


  iRecord.getRecord<TrackingComponentsRecord>().get(pname, prop);
  iRecord.getRecord<TrackingComponentsRecord>().get(uname, upd);
  iRecord.getRecord<TrackingComponentsRecord>().get(ename, est);
  iRecord.getRecord<RecoGeometryRecord>().get(gname,geo);

  _smoother  = boost::shared_ptr<TrajectorySmoother>(new KFTrajectorySmoother(prop.product(),
                                                                              upd.product(),
                                                                              est.product(),
                                                                              rescaleFactor,
                                                                              minHits,
                                                                              geo.product() ));
  return _smoother;
}

Member Data Documentation

Definition at line 25 of file KFTrajectorySmootherESProducer.h.

Definition at line 26 of file KFTrajectorySmootherESProducer.h.