CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
hltriggeroffline::PropagateToMuon Class Reference

#include <PropagateToMuon.h>

Public Types

using ESTokens = std::tuple< edm::ESGetToken< MagneticField, IdealMagneticFieldRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< MuonDetLayerGeometry, MuonRecoGeometryRecord >>
 

Public Member Functions

TrajectoryStateOnSurface extrapolate (const reco::Track &tk) const
 
TrajectoryStateOnSurface extrapolate (const reco::Candidate &tk) const
 
TrajectoryStateOnSurface extrapolate (const FreeTrajectoryState &state) const
 
void init (const edm::EventSetup &iSetup)
 
 PropagateToMuon (const edm::ParameterSet &iConfig, const ESTokens &)
 
 ~PropagateToMuon ()
 

Static Public Member Functions

static ESTokens getESTokens (edm::ConsumesCollector)
 

Private Types

enum  WhichState { AtVertex, Innermost, Outermost }
 
enum  WhichTrack { None, TrackerTk, MuonTk, GlobalTk }
 

Private Member Functions

TrajectoryStateOnSurface getBestDet (const TrajectoryStateOnSurface &tsos, const DetLayer *station) const
 
FreeTrajectoryState startingState (const reco::Candidate &reco) const
 Starting state for the propagation. More...
 
FreeTrajectoryState startingState (const reco::Track &tk) const
 Starting state for the propagation. More...
 

Private Attributes

const BoundCylinderbarrelCylinder_
 
double barrelHalfLength_
 
bool cosmicPropagation_
 
const BoundDiskendcapDiskNeg_
 
const BoundDiskendcapDiskPos_
 
std::pair< float, float > endcapRadii_
 
edm::ESHandle< MagneticFieldmagfield_
 
edm::ESGetToken< MagneticField,
IdealMagneticFieldRecord
magfieldToken_
 
edm::ESHandle
< MuonDetLayerGeometry
muonGeometry_
 
edm::ESGetToken
< MuonDetLayerGeometry,
MuonRecoGeometryRecord
muonGeometryToken_
 
edm::ESHandle< Propagatorpropagator_
 
edm::ESHandle< PropagatorpropagatorAny_
 
edm::ESGetToken< Propagator,
TrackingComponentsRecord
propagatorAnyToken_
 
edm::ESHandle< PropagatorpropagatorOpposite_
 
edm::ESGetToken< Propagator,
TrackingComponentsRecord
propagatorOppositeToken_
 
edm::ESGetToken< Propagator,
TrackingComponentsRecord
propagatorToken_
 
bool useSimpleGeometry_
 Labels for input collections. More...
 
WhichState whichState_
 
WhichTrack whichTrack_
 

Detailed Description

Definition at line 38 of file PropagateToMuon.h.

Member Typedef Documentation

Definition at line 44 of file PropagateToMuon.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

PropagateToMuon::PropagateToMuon ( const edm::ParameterSet iConfig,
const ESTokens iTokens 
)
explicit

Definition at line 33 of file PropagateToMuon.cc.

References AtVertex, cosmicPropagation_, Exception, edm::ParameterSet::getParameter(), GlobalTk, Innermost, MuonTk, None, Outermost, AlCaHLTBitMon_QueryRunRegistry::string, TrackerTk, whichState_, and whichTrack_.

34  : useSimpleGeometry_(iConfig.getParameter<bool>("useSimpleGeometry")),
37  cosmicPropagation_(iConfig.existsAs<bool>("cosmicPropagationHypothesis")
38  ? iConfig.getParameter<bool>("cosmicPropagationHypothesis")
39  : false),
40  magfieldToken_(std::get<0>(iTokens)),
41  propagatorToken_(std::get<1>(iTokens)),
42  propagatorAnyToken_(std::get<2>(iTokens)),
43  propagatorOppositeToken_(std::get<3>(iTokens)),
44  muonGeometryToken_(std::get<4>(iTokens)) {
45  std::string whichTrack = iConfig.getParameter<std::string>("useTrack");
46  if (whichTrack == "none") {
47  whichTrack_ = None;
48  } else if (whichTrack == "tracker") {
50  } else if (whichTrack == "muon") {
52  } else if (whichTrack == "global") {
54  } else
55  throw cms::Exception("Configuration") << "Parameter 'useTrack' must be 'none', 'tracker', 'muon', 'global'\n";
56  if (whichTrack_ != None) {
57  std::string whichState = iConfig.getParameter<std::string>("useState");
58  if (whichState == "atVertex") {
60  } else if (whichState == "innermost") {
62  } else if (whichState == "outermost") {
64  } else
65  throw cms::Exception("Configuration") << "Parameter 'useState' must be 'atVertex', 'innermost', "
66  "'outermost'\n";
67  }
69  throw cms::Exception("Configuration") << "When using 'cosmicPropagationHypothesis' useTrack must not be "
70  "'none', and the state must not be 'atVertex'\n";
71  }
72 }
bool existsAs(std::string const &parameterName, bool trackiness=true) const
checks if a parameter exists as a given type
Definition: ParameterSet.h:171
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorAnyToken_
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorOppositeToken_
edm::ESGetToken< MuonDetLayerGeometry, MuonRecoGeometryRecord > muonGeometryToken_
bool useSimpleGeometry_
Labels for input collections.
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorToken_
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > magfieldToken_
PropagateToMuon::~PropagateToMuon ( )

Definition at line 74 of file PropagateToMuon.cc.

74 {}

Member Function Documentation

TrajectoryStateOnSurface hltriggeroffline::PropagateToMuon::extrapolate ( const reco::Track tk) const
inline

Extrapolate reco::Track to the muon station 2, return an invalid TSOS if it fails

Definition at line 57 of file PropagateToMuon.h.

References extrapolate(), and startingState().

Referenced by hltriggeroffline::L1MuonMatcherAlgo::extrapolate(), and extrapolate().

57 { return extrapolate(startingState(tk)); }
TrajectoryStateOnSurface extrapolate(const reco::Track &tk) const
FreeTrajectoryState startingState(const reco::Candidate &reco) const
Starting state for the propagation.
TrajectoryStateOnSurface hltriggeroffline::PropagateToMuon::extrapolate ( const reco::Candidate tk) const
inline

Extrapolate reco::Candidate to the muon station 2, return an invalid TSOS if it fails

Definition at line 61 of file PropagateToMuon.h.

References extrapolate(), and startingState().

Referenced by extrapolate().

61 { return extrapolate(startingState(tk)); }
TrajectoryStateOnSurface extrapolate(const reco::Track &tk) const
FreeTrajectoryState startingState(const reco::Candidate &reco) const
Starting state for the propagation.
TrajectoryStateOnSurface PropagateToMuon::extrapolate ( const FreeTrajectoryState state) const

Extrapolate a FreeTrajectoryState to the muon station 2, return an invalid TSOS if it fails

Definition at line 156 of file PropagateToMuon.cc.

References AtVertex, barrelCylinder_, barrelHalfLength_, cosmicPropagation_, Vector3DBase< T, FrameTag >::dot(), endcapDiskNeg_, endcapDiskPos_, endcapRadii_, PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), getBestDet(), TrajectoryStateOnSurface::globalPosition(), sistrip::SpyUtilities::isValid(), TrajectoryStateOnSurface::isValid(), PV3DBase< T, PVType, FrameType >::mag(), FreeTrajectoryState::momentum(), muonGeometry_, PV3DBase< T, PVType, FrameType >::perp(), FreeTrajectoryState::position(), Propagator::propagate(), propagator_, propagatorOpposite_, useSimpleGeometry_, whichState_, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

156  {
158  if (start.momentum().mag() == 0)
159  return final;
160  double eta = start.momentum().eta();
161 
162  const Propagator *propagatorBarrel = &*propagator_;
163  const Propagator *propagatorEndcaps = &*propagator_;
164 
165  if (whichState_ != AtVertex) {
166  if (start.position().perp() > barrelCylinder_->radius())
167  propagatorBarrel = &*propagatorOpposite_;
168  if (fabs(start.position().z()) > endcapDiskPos_->position().z())
169  propagatorEndcaps = &*propagatorOpposite_;
170  }
171  if (cosmicPropagation_) {
172  if (start.momentum().dot(GlobalVector(start.position().x(), start.position().y(), start.position().z())) < 0) {
173  // must flip the propagations
174  propagatorBarrel = (propagatorBarrel == &*propagator_ ? &*propagatorOpposite_ : &*propagator_);
175  propagatorEndcaps = (propagatorEndcaps == &*propagator_ ? &*propagatorOpposite_ : &*propagator_);
176  }
177  }
178 
179  TrajectoryStateOnSurface tsos = propagatorBarrel->propagate(start, *barrelCylinder_);
180  if (tsos.isValid()) {
181  if (useSimpleGeometry_) {
182  if (fabs(tsos.globalPosition().z()) <= barrelHalfLength_)
183  final = tsos;
184  } else {
185  final = getBestDet(tsos, muonGeometry_->allDTLayers()[1]);
186  }
187  }
188 
189  if (!final.isValid()) {
190  tsos = propagatorEndcaps->propagate(start, (eta > 0 ? *endcapDiskPos_ : *endcapDiskNeg_));
191  if (tsos.isValid()) {
192  if (useSimpleGeometry_) {
193  float rho = tsos.globalPosition().perp();
194  if ((rho >= endcapRadii_.first) && (rho <= endcapRadii_.second))
195  final = tsos;
196  } else {
197  final =
198  getBestDet(tsos, (eta > 0 ? muonGeometry_->forwardCSCLayers()[2] : muonGeometry_->backwardCSCLayers()[2]));
199  }
200  }
201  }
202  return final;
203 }
T perp() const
Definition: PV3DBase.h:69
const bool isValid(const Frame &aFrame, const FrameQuality &aQuality, const uint16_t aExpectedPos)
GlobalPoint globalPosition() const
const BoundCylinder * barrelCylinder_
bool useSimpleGeometry_
Labels for input collections.
T z() const
Definition: PV3DBase.h:61
edm::ESHandle< Propagator > propagator_
edm::ESHandle< Propagator > propagatorOpposite_
TrajectoryStateOnSurface getBestDet(const TrajectoryStateOnSurface &tsos, const DetLayer *station) const
TrajectoryStateOnSurface propagate(STA const &state, SUR const &surface) const
Definition: Propagator.h:50
std::pair< float, float > endcapRadii_
edm::ESHandle< MuonDetLayerGeometry > muonGeometry_
Global3DVector GlobalVector
Definition: GlobalVector.h:10
TrajectoryStateOnSurface PropagateToMuon::getBestDet ( const TrajectoryStateOnSurface tsos,
const DetLayer station 
) const
private

Get the best TSOS on one of the chambres of this DetLayer, or an invalid TSOS if none match

Definition at line 205 of file PropagateToMuon.cc.

References Chi2MeasurementEstimator_cfi::Chi2MeasurementEstimator, GeometricSearchDet::compatibleDets(), propagatorAny_, and runTheMatrix::ret.

Referenced by extrapolate().

206  {
207  TrajectoryStateOnSurface ret; // start as null
209  3.); // require compatibility at 3 sigma
210  std::vector<GeometricSearchDet::DetWithState> dets = layer->compatibleDets(tsos, *propagatorAny_, estimator);
211  if (!dets.empty()) {
212  ret = dets.front().second;
213  }
214  return ret;
215 }
tuple ret
prodAgent to be discontinued
constexpr std::array< uint8_t, layerIndexSize > layer
edm::ESHandle< Propagator > propagatorAny_
PropagateToMuon::ESTokens PropagateToMuon::getESTokens ( edm::ConsumesCollector  iCollector)
static

Definition at line 20 of file PropagateToMuon.cc.

References edm::BeginRun, edm::ConsumesCollector::esConsumes(), and runTheMatrix::ret.

Referenced by HLTMuonPlotter::getESTokens().

20  {
21  ESTokens ret;
22  std::get<0>(ret) = iCollector.esConsumes<edm::Transition::BeginRun>();
23  std::get<1>(ret) =
24  iCollector.esConsumes<edm::Transition::BeginRun>(edm::ESInputTag("", "SteppingHelixPropagatorAlong"));
25  std::get<2>(ret) =
26  iCollector.esConsumes<edm::Transition::BeginRun>(edm::ESInputTag("", "SteppingHelixPropagatorAny"));
27  std::get<3>(ret) =
28  iCollector.esConsumes<edm::Transition::BeginRun>(edm::ESInputTag("", "SteppingHelixPropagatorOpposite"));
29  std::get<4>(ret) = iCollector.esConsumes<edm::Transition::BeginRun>();
30  return ret;
31 }
tuple ret
prodAgent to be discontinued
std::tuple< edm::ESGetToken< MagneticField, IdealMagneticFieldRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< Propagator, TrackingComponentsRecord >, edm::ESGetToken< MuonDetLayerGeometry, MuonRecoGeometryRecord >> ESTokens
void PropagateToMuon::init ( const edm::EventSetup iSetup)

Call this method at the beginning of each run, to initialize geometry, magnetic field and propagators

Definition at line 76 of file PropagateToMuon.cc.

References barrelCylinder_, barrelHalfLength_, endcapDiskNeg_, endcapDiskPos_, endcapRadii_, Exception, edm::EventSetup::getHandle(), magfield_, magfieldToken_, muonGeometry_, muonGeometryToken_, propagator_, propagatorAny_, propagatorAnyToken_, propagatorOpposite_, propagatorOppositeToken_, propagatorToken_, and GeometricSearchDet::surface().

Referenced by hltriggeroffline::L1MuonMatcherAlgo::init().

76  {
82 
83  const DetLayer *dt2 = muonGeometry_->allDTLayers()[1];
84  const DetLayer *csc2Pos = muonGeometry_->forwardCSCLayers()[2];
85  const DetLayer *csc2Neg = muonGeometry_->backwardCSCLayers()[2];
86  barrelCylinder_ = dynamic_cast<const BoundCylinder *>(&dt2->surface());
87  endcapDiskPos_ = dynamic_cast<const BoundDisk *>(&csc2Pos->surface());
88  endcapDiskNeg_ = dynamic_cast<const BoundDisk *>(&csc2Neg->surface());
89  if (barrelCylinder_ == nullptr || endcapDiskPos_ == nullptr || endcapDiskNeg_ == nullptr)
90  throw cms::Exception("Geometry") << "Bad muon geometry!?";
91  barrelHalfLength_ = barrelCylinder_->bounds().length() / 2;
92  ;
93  endcapRadii_ = std::make_pair(endcapDiskPos_->innerRadius(), endcapDiskPos_->outerRadius());
94  // std::cout << "L1MuonMatcher: barrel radius = " << barrelCylinder_->radius()
95  // << ", half length = " << barrelHalfLength_ <<
96  // "; endcap Z = " << endcapDiskPos_->position().z() << ", radii =
97  // " << endcapRadii_.first << "," << endcapRadii_.second <<
98  // std::std::endl;
99 }
edm::ESHandle< MagneticField > magfield_
virtual const BoundSurface & surface() const =0
The surface of the GeometricSearchDet.
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorAnyToken_
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorOppositeToken_
edm::ESGetToken< MuonDetLayerGeometry, MuonRecoGeometryRecord > muonGeometryToken_
const BoundCylinder * barrelCylinder_
edm::ESHandle< Propagator > propagator_
edm::ESGetToken< Propagator, TrackingComponentsRecord > propagatorToken_
edm::ESHandle< Propagator > propagatorAny_
edm::ESHandle< Propagator > propagatorOpposite_
std::pair< float, float > endcapRadii_
edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > magfieldToken_
edm::ESHandle< MuonDetLayerGeometry > muonGeometry_
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:157
FreeTrajectoryState PropagateToMuon::startingState ( const reco::Candidate reco) const
private

Starting state for the propagation.

Definition at line 101 of file PropagateToMuon.cc.

References reco::Candidate::charge(), reco::RecoCandidate::combinedMuon(), Exception, GlobalTk, edm::Ref< C, T, F >::isNull(), magfield_, MuonTk, None, edm::ESHandle< class >::product(), reco::Candidate::px(), reco::Candidate::py(), reco::Candidate::pz(), dt_dqm_sourceclient_common_cff::reco, runTheMatrix::ret, reco::RecoCandidate::standAloneMuon(), reco::RecoCandidate::track(), TrackerTk, reco::Candidate::vx(), reco::Candidate::vy(), reco::Candidate::vz(), and whichTrack_.

Referenced by extrapolate().

101  {
103  if (whichTrack_ != None) {
104  const reco::RecoCandidate *rc = dynamic_cast<const reco::RecoCandidate *>(&reco);
105  if (rc == nullptr)
106  throw cms::Exception("Invalid Data") << "Input object is not a RecoCandidate.\n";
107  reco::TrackRef tk;
108  switch (whichTrack_) {
109  case TrackerTk:
110  tk = rc->track();
111  break;
112  case MuonTk:
113  tk = rc->standAloneMuon();
114  break;
115  case GlobalTk:
116  tk = rc->combinedMuon();
117  break;
118  default:
119  break; // just to make gcc happy
120  }
121  if (tk.isNull()) {
122  ret = FreeTrajectoryState();
123  } else {
124  ret = startingState(*tk);
125  }
126  } else {
127  ret = FreeTrajectoryState(GlobalPoint(reco.vx(), reco.vy(), reco.vz()),
128  GlobalVector(reco.px(), reco.py(), reco.pz()),
129  reco.charge(),
130  magfield_.product());
131  }
132  return ret;
133 }
edm::ESHandle< MagneticField > magfield_
tuple ret
prodAgent to be discontinued
virtual double pz() const =0
z coordinate of momentum vector
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
virtual double vx() const =0
x coordinate of vertex position
virtual reco::TrackRef standAloneMuon() const
reference to a stand-alone muon Track
virtual double vy() const =0
y coordinate of vertex position
virtual reco::TrackRef track() const
reference to a Track
virtual int charge() const =0
electric charge
virtual double py() const =0
y coordinate of momentum vector
bool isNull() const
Checks for null.
Definition: Ref.h:235
virtual double px() const =0
x coordinate of momentum vector
T const * product() const
Definition: ESHandle.h:86
virtual double vz() const =0
z coordinate of vertex position
FreeTrajectoryState startingState(const reco::Candidate &reco) const
Starting state for the propagation.
Global3DVector GlobalVector
Definition: GlobalVector.h:10
virtual reco::TrackRef combinedMuon() const
reference to a stand-alone muon Track
FreeTrajectoryState PropagateToMuon::startingState ( const reco::Track tk) const
private

Starting state for the propagation.

Definition at line 135 of file PropagateToMuon.cc.

References AtVertex, cosmicPropagation_, trajectoryStateTransform::initialFreeState(), trajectoryStateTransform::innerFreeState(), Innermost, reco::Track::innerPosition(), magfield_, trajectoryStateTransform::outerFreeState(), Outermost, reco::Track::outerPosition(), edm::ESHandle< class >::product(), and whichState_.

135  {
137  if (cosmicPropagation_) {
138  if (whichState_ == Innermost) {
139  state = tk.innerPosition().Mag2() <= tk.outerPosition().Mag2() ? Innermost : Outermost;
140  } else if (whichState_ == Outermost) {
141  state = tk.innerPosition().Mag2() <= tk.outerPosition().Mag2() ? Outermost : Innermost;
142  }
143  }
144  switch (state) {
145  case Innermost:
147  case Outermost:
149 
150  case AtVertex:
151  default:
153  }
154 }
edm::ESHandle< MagneticField > magfield_
const math::XYZPoint & outerPosition() const
position of the outermost hit
Definition: Track.h:62
const math::XYZPoint & innerPosition() const
position of the innermost hit
Definition: Track.h:56
T const * product() const
Definition: ESHandle.h:86
FreeTrajectoryState innerFreeState(const reco::Track &tk, const MagneticField *field, bool withErr=true)
FreeTrajectoryState outerFreeState(const reco::Track &tk, const MagneticField *field, bool withErr=true)
FreeTrajectoryState initialFreeState(const reco::Track &tk, const MagneticField *field, bool withErr=true)

Member Data Documentation

const BoundCylinder* hltriggeroffline::PropagateToMuon::barrelCylinder_
private

Definition at line 90 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

double hltriggeroffline::PropagateToMuon::barrelHalfLength_
private

Definition at line 92 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

bool hltriggeroffline::PropagateToMuon::cosmicPropagation_
private

for cosmics, some things change: the along-opposite is not in-out, nor the innermost/outermost states are in-out really

Definition at line 78 of file PropagateToMuon.h.

Referenced by extrapolate(), PropagateToMuon(), and startingState().

const BoundDisk * hltriggeroffline::PropagateToMuon::endcapDiskNeg_
private

Definition at line 91 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

const BoundDisk* hltriggeroffline::PropagateToMuon::endcapDiskPos_
private

Definition at line 91 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

std::pair<float, float> hltriggeroffline::PropagateToMuon::endcapRadii_
private

Definition at line 93 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

edm::ESHandle<MagneticField> hltriggeroffline::PropagateToMuon::magfield_
private

Definition at line 81 of file PropagateToMuon.h.

Referenced by init(), and startingState().

edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> hltriggeroffline::PropagateToMuon::magfieldToken_
private

Definition at line 85 of file PropagateToMuon.h.

Referenced by init().

edm::ESHandle<MuonDetLayerGeometry> hltriggeroffline::PropagateToMuon::muonGeometry_
private

Definition at line 83 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

edm::ESGetToken<MuonDetLayerGeometry, MuonRecoGeometryRecord> hltriggeroffline::PropagateToMuon::muonGeometryToken_
private

Definition at line 88 of file PropagateToMuon.h.

Referenced by init().

edm::ESHandle<Propagator> hltriggeroffline::PropagateToMuon::propagator_
private

Definition at line 82 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

edm::ESHandle<Propagator> hltriggeroffline::PropagateToMuon::propagatorAny_
private

Definition at line 82 of file PropagateToMuon.h.

Referenced by getBestDet(), and init().

edm::ESGetToken<Propagator, TrackingComponentsRecord> hltriggeroffline::PropagateToMuon::propagatorAnyToken_
private

Definition at line 86 of file PropagateToMuon.h.

Referenced by init().

edm::ESHandle<Propagator> hltriggeroffline::PropagateToMuon::propagatorOpposite_
private

Definition at line 82 of file PropagateToMuon.h.

Referenced by extrapolate(), and init().

edm::ESGetToken<Propagator, TrackingComponentsRecord> hltriggeroffline::PropagateToMuon::propagatorOppositeToken_
private

Definition at line 86 of file PropagateToMuon.h.

Referenced by init().

edm::ESGetToken<Propagator, TrackingComponentsRecord> hltriggeroffline::PropagateToMuon::propagatorToken_
private

Definition at line 86 of file PropagateToMuon.h.

Referenced by init().

bool hltriggeroffline::PropagateToMuon::useSimpleGeometry_
private

Labels for input collections.

Definition at line 72 of file PropagateToMuon.h.

Referenced by extrapolate().

WhichState hltriggeroffline::PropagateToMuon::whichState_
private

Definition at line 74 of file PropagateToMuon.h.

Referenced by extrapolate(), PropagateToMuon(), and startingState().

WhichTrack hltriggeroffline::PropagateToMuon::whichTrack_
private

Definition at line 73 of file PropagateToMuon.h.

Referenced by PropagateToMuon(), and startingState().