CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
jptJetAnalysis::TrackPropagatorToCalo Class Reference

Public Member Functions

math::XYZPoint impactPoint (const reco::Track &track) const
 
 TrackPropagatorToCalo ()
 
void update (const edm::EventSetup &eventSetup)
 

Private Attributes

const MagneticFieldmagneticField_
 
uint32_t magneticFieldCacheId_
 
const Propagatorpropagator_
 
uint32_t propagatorCacheId_
 

Detailed Description

Definition at line 41 of file JPTJetAnalyzer.cc.

Constructor & Destructor Documentation

jptJetAnalysis::TrackPropagatorToCalo::TrackPropagatorToCalo ( )

Definition at line 727 of file JPTJetAnalyzer.cc.

Member Function Documentation

math::XYZPoint jptJetAnalysis::TrackPropagatorToCalo::impactPoint ( const reco::Track track) const
inline

Definition at line 756 of file JPTJetAnalyzer.cc.

References magneticField_, JetTracksAssociationDRCalo::propagateTrackToCalorimeter(), and propagator_.

757  {
759  }
static math::XYZPoint propagateTrackToCalorimeter(const reco::Track &fTrack, const MagneticField &fField, const Propagator &fPropagator)
propagating the track to the Calorimeter
void jptJetAnalysis::TrackPropagatorToCalo::update ( const edm::EventSetup eventSetup)

Definition at line 734 of file JPTJetAnalyzer.cc.

References edm::eventsetup::EventSetupRecord::cacheIdentifier(), edm::EventSetup::get(), edm::eventsetup::EventSetupRecord::get(), magneticField_, magneticFieldCacheId_, edm::ESHandle< class >::product(), propagator_, and propagatorCacheId_.

Referenced by progressbar.ProgressBar::__next__(), relval_steps.Matrix::__setitem__(), relval_steps.Steps::__setitem__(), Vispa.Gui.VispaWidget.VispaWidget::autosize(), Vispa.Views.LineDecayView.LineDecayContainer::createObject(), Vispa.Views.LineDecayView.LineDecayContainer::deselectAllObjects(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::deselectAllWidgets(), Vispa.Gui.VispaWidget.VispaWidget::enableAutosizing(), progressbar.ProgressBar::finish(), Vispa.Gui.MenuWidget.MenuWidget::leaveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseMoveEvent(), Vispa.Gui.MenuWidget.MenuWidget::mouseMoveEvent(), Vispa.Views.LineDecayView.LineDecayContainer::mouseMoveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseReleaseEvent(), Vispa.Views.LineDecayView.LineDecayContainer::objectMoved(), relval_steps.Steps::overwrite(), Vispa.Views.LineDecayView.LineDecayContainer::removeObject(), Vispa.Gui.ConnectableWidget.ConnectableWidget::removePorts(), Vispa.Gui.FindDialog.FindDialog::reset(), Vispa.Gui.PortConnection.PointToPointConnection::select(), Vispa.Gui.VispaWidget.VispaWidget::select(), Vispa.Views.LineDecayView.LineDecayContainer::select(), Vispa.Gui.VispaWidget.VispaWidget::setText(), Vispa.Gui.VispaWidget.VispaWidget::setTitle(), Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom(), Vispa.Views.LineDecayView.LineDecayContainer::setZoom(), and Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().

735  {
736  //update magnetic filed if necessary
737  const IdealMagneticFieldRecord& magneticFieldRecord = eventSetup.get<IdealMagneticFieldRecord>();
738  const uint32_t newMagneticFieldCacheId = magneticFieldRecord.cacheIdentifier();
739  if ((newMagneticFieldCacheId != magneticFieldCacheId_) || !magneticField_) {
740  edm::ESHandle<MagneticField> magneticFieldHandle;
741  magneticFieldRecord.get(magneticFieldHandle);
742  magneticField_ = magneticFieldHandle.product();
743  magneticFieldCacheId_ = newMagneticFieldCacheId;
744  }
745  //update propagator if necessary
746  const TrackingComponentsRecord& trackingComponentsRecord = eventSetup.get<TrackingComponentsRecord>();
747  const uint32_t newPropagatorCacheId = trackingComponentsRecord.cacheIdentifier();
748  if ((propagatorCacheId_ != newPropagatorCacheId) || !propagator_) {
749  edm::ESHandle<Propagator> propagatorHandle;
750  trackingComponentsRecord.get("SteppingHelixPropagatorAlong",propagatorHandle);
751  propagator_ = propagatorHandle.product();
752  propagatorCacheId_ = newPropagatorCacheId;
753  }
754  }
unsigned long long cacheIdentifier() const
void get(HolderT &iHolder) const
const T & get() const
Definition: EventSetup.h:55
T const * product() const
Definition: ESHandle.h:62

Member Data Documentation

const MagneticField* jptJetAnalysis::TrackPropagatorToCalo::magneticField_
private

Definition at line 48 of file JPTJetAnalyzer.cc.

Referenced by impactPoint(), and update().

uint32_t jptJetAnalysis::TrackPropagatorToCalo::magneticFieldCacheId_
private

Definition at line 50 of file JPTJetAnalyzer.cc.

Referenced by update().

const Propagator* jptJetAnalysis::TrackPropagatorToCalo::propagator_
private

Definition at line 49 of file JPTJetAnalyzer.cc.

Referenced by impactPoint(), and update().

uint32_t jptJetAnalysis::TrackPropagatorToCalo::propagatorCacheId_
private

Definition at line 51 of file JPTJetAnalyzer.cc.

Referenced by update().