CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
MuonTrackingRegionBuilder Class Reference

#include <MuonTrackingRegionBuilder.h>

Inheritance diagram for MuonTrackingRegionBuilder:
TrackingRegionProducer

Public Member Functions

 MuonTrackingRegionBuilder (const edm::ParameterSet &par, edm::ConsumesCollector &iC)
 Constructor. More...
 
 MuonTrackingRegionBuilder (const edm::ParameterSet &par, edm::ConsumesCollector &&iC)
 
std::unique_ptr< RectangularEtaPhiTrackingRegionregion (const reco::TrackRef &) const
 Define tracking region. More...
 
std::unique_ptr< RectangularEtaPhiTrackingRegionregion (const reco::Track &t) const
 
std::unique_ptr< RectangularEtaPhiTrackingRegionregion (const reco::Track &, const edm::Event &) const
 
std::vector< std::unique_ptr< TrackingRegion > > regions (const edm::Event &, const edm::EventSetup &) const override
 Create Region of Interest. More...
 
virtual void setEvent (const edm::Event &)
 Pass the Event to the algo at each event. More...
 
 ~MuonTrackingRegionBuilder () override
 Destructor. More...
 
- Public Member Functions inherited from TrackingRegionProducer
virtual ~TrackingRegionProducer ()
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 Add Fill Descriptions. More...
 
static void fillDescriptionsHLT (edm::ParameterSetDescription &descriptions)
 
static void fillDescriptionsOffline (edm::ParameterSetDescription &descriptions)
 

Private Member Functions

void build (const edm::ParameterSet &, edm::ConsumesCollector &)
 

Private Attributes

edm::EDGetTokenT< reco::BeamSpotbeamSpotToken
 
edm::EDGetTokenT< reco::TrackCollectioninputCollectionToken
 
double theDeltaEta
 
double theDeltaPhi
 
double theDeltaR
 
double theEtaMin
 
double theEtaRegionPar1
 
double theEtaRegionPar2
 
const edm::EventtheEvent
 
double theHalfZ
 
int theMaxRegions
 
edm::EDGetTokenT< MeasurementTrackerEventtheMeasurementTrackerToken
 
double theNsigmaDz
 
double theNsigmaEta
 
double theNsigmaPhi
 
RectangularEtaPhiTrackingRegion::UseMeasurementTracker theOnDemand
 
double thePhiMin
 
double thePhiRegionPar1
 
double thePhiRegionPar2
 
bool thePrecise
 
double thePtMin
 
bool useFixedEta
 
bool useFixedPhi
 
bool useFixedPt
 
bool useFixedZ
 
bool useVertex
 
edm::EDGetTokenT< reco::VertexCollectionvertexCollectionToken
 

Detailed Description

Build a TrackingRegion around a standalone muon

Options: Beamspot : Origin is defined by primary vertex Vertex : Origin is defined by primary vertex (first valid vertex in the VertexCollection) if no vertex is found the beamspot is used instead DynamicZError DynamicEtaError DynamicphiError

Author
N. Neumeister Purdue University
A. Everett Purdue University

Definition at line 43 of file MuonTrackingRegionBuilder.h.

Constructor & Destructor Documentation

MuonTrackingRegionBuilder::MuonTrackingRegionBuilder ( const edm::ParameterSet par,
edm::ConsumesCollector iC 
)
inlineexplicit

Constructor.

Definition at line 46 of file MuonTrackingRegionBuilder.h.

References newFWLiteAna::build.

46 { build(par, iC); }
void build(const edm::ParameterSet &, edm::ConsumesCollector &)
MuonTrackingRegionBuilder::MuonTrackingRegionBuilder ( const edm::ParameterSet par,
edm::ConsumesCollector &&  iC 
)
inlineexplicit

Definition at line 47 of file MuonTrackingRegionBuilder.h.

References newFWLiteAna::build.

47 { build(par, iC); }
void build(const edm::ParameterSet &, edm::ConsumesCollector &)
MuonTrackingRegionBuilder::~MuonTrackingRegionBuilder ( )
inlineoverride

Destructor.

Definition at line 50 of file MuonTrackingRegionBuilder.h.

References HLT_2018_cff::region.

50 {}

Member Function Documentation

void MuonTrackingRegionBuilder::build ( const edm::ParameterSet par,
edm::ConsumesCollector iC 
)
private

Class: MuonTrackingRegionBuilder

Build a TrackingRegion around a standalone muon

Author
N. Neumeister Purdue University
A. Everett Purdue University

Definition at line 32 of file MuonTrackingRegionBuilder.cc.

References beamSpotToken, edm::ConsumesCollector::consumes(), edm::ParameterSet::getParameter(), inputCollectionToken, RectangularEtaPhiTrackingRegion::intToUseMeasurementTracker(), RectangularEtaPhiTrackingRegion::kNever, theDeltaEta, theDeltaPhi, theDeltaR, theEtaMin, theEtaRegionPar1, theEtaRegionPar2, theHalfZ, theMaxRegions, theMeasurementTrackerToken, theNsigmaDz, theNsigmaEta, theNsigmaPhi, theOnDemand, thePhiMin, thePhiRegionPar1, thePhiRegionPar2, thePrecise, thePtMin, useFixedEta, useFixedPhi, useFixedPt, useFixedZ, useVertex, and vertexCollectionToken.

32  {
33  // Adjust errors on Eta, Phi, Z
34  theNsigmaEta = par.getParameter<double>("Rescale_eta");
35  theNsigmaPhi = par.getParameter<double>("Rescale_phi");
36  theNsigmaDz = par.getParameter<double>("Rescale_Dz");
37 
38  // Upper limits parameters
39  theEtaRegionPar1 = par.getParameter<double>("EtaR_UpperLimit_Par1");
40  theEtaRegionPar2 = par.getParameter<double>("EtaR_UpperLimit_Par2");
41  thePhiRegionPar1 = par.getParameter<double>("PhiR_UpperLimit_Par1");
42  thePhiRegionPar2 = par.getParameter<double>("PhiR_UpperLimit_Par2");
43 
44  // Flag to switch to use Vertices instead of BeamSpot
45  useVertex = par.getParameter<bool>("UseVertex");
46 
47  // Flag to use fixed limits for Eta, Phi, Z, pT
48  useFixedZ = par.getParameter<bool>("Z_fixed");
49  useFixedPt = par.getParameter<bool>("Pt_fixed");
50  useFixedPhi = par.getParameter<bool>("Phi_fixed");
51  useFixedEta = par.getParameter<bool>("Eta_fixed");
52 
53  // Minimum value for pT
54  thePtMin = par.getParameter<double>("Pt_min");
55 
56  // Minimum value for Phi
57  thePhiMin = par.getParameter<double>("Phi_min");
58 
59  // Minimum value for Eta
60  theEtaMin = par.getParameter<double>("Eta_min");
61 
62  // The static region size along the Z direction
63  theHalfZ = par.getParameter<double>("DeltaZ");
64 
65  // The transverse distance of the region from the BS/PV
66  theDeltaR = par.getParameter<double>("DeltaR");
67 
68  // The static region size in Eta
69  theDeltaEta = par.getParameter<double>("DeltaEta");
70 
71  // The static region size in Phi
72  theDeltaPhi = par.getParameter<double>("DeltaPhi");
73 
74  // Maximum number of regions to build when looping over Muons
75  theMaxRegions = par.getParameter<int>("maxRegions");
76 
77  // Flag to use precise??
78  thePrecise = par.getParameter<bool>("precise");
79 
80  // perigee reference point ToDo: Check this
84  iC.consumes<MeasurementTrackerEvent>(par.getParameter<edm::InputTag>("MeasurementTrackerName"));
85  }
86 
87  // Vertex collection and Beam Spot
90 
91  // Input muon collection
93 }
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
RectangularEtaPhiTrackingRegion::UseMeasurementTracker theOnDemand
edm::EDGetTokenT< reco::TrackCollection > inputCollectionToken
edm::EDGetTokenT< reco::VertexCollection > vertexCollectionToken
static UseMeasurementTracker intToUseMeasurementTracker(int value)
edm::EDGetTokenT< MeasurementTrackerEvent > theMeasurementTrackerToken
void MuonTrackingRegionBuilder::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Add Fill Descriptions.

Definition at line 238 of file MuonTrackingRegionBuilder.cc.

References edm::ConfigurationDescriptions::add(), fillDescriptionsHLT(), fillDescriptionsOffline(), and edm::ConfigurationDescriptions::setComment().

238  {
239  {
242  descriptions.add("MuonTrackingRegionBuilder", desc);
243  }
244  {
246  fillDescriptionsHLT(desc);
247  descriptions.add("MuonTrackingRegionBuilderHLT", desc);
248  }
249  descriptions.setComment(
250  "Build a TrackingRegion around a standalone muon. Options to define region around beamspot or primary vertex and "
251  "dynamic regions are included.");
252 }
void setComment(std::string const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptionsOffline(edm::ParameterSetDescription &descriptions)
static void fillDescriptionsHLT(edm::ParameterSetDescription &descriptions)
void MuonTrackingRegionBuilder::fillDescriptionsHLT ( edm::ParameterSetDescription descriptions)
static

Definition at line 253 of file MuonTrackingRegionBuilder.cc.

References edm::ParameterSetDescription::add(), and HLT_2018_cff::InputTag.

Referenced by L3MuonTrajectoryBuilder::fillDescriptions(), and fillDescriptions().

253  {
254  desc.add<double>("EtaR_UpperLimit_Par1", 0.25);
255  desc.add<double>("DeltaR", 0.2);
256  desc.add<edm::InputTag>("beamSpot", edm::InputTag("hltOnlineBeamSpot"));
257  desc.add<int>("OnDemand", -1);
258  desc.add<edm::InputTag>("vertexCollection", edm::InputTag("pixelVertices"));
259  desc.add<double>("Rescale_phi", 3.0);
260  desc.add<bool>("Eta_fixed", false);
261  desc.add<double>("Rescale_eta", 3.0);
262  desc.add<double>("PhiR_UpperLimit_Par2", 0.2);
263  desc.add<double>("Eta_min", 0.05);
264  desc.add<bool>("Phi_fixed", false);
265  desc.add<double>("Phi_min", 0.05);
266  desc.add<double>("PhiR_UpperLimit_Par1", 0.6);
267  desc.add<double>("EtaR_UpperLimit_Par2", 0.15);
268  desc.add<edm::InputTag>("MeasurementTrackerName", edm::InputTag("hltESPMeasurementTracker"));
269  desc.add<bool>("UseVertex", false);
270  desc.add<double>("Rescale_Dz", 3.0);
271  desc.add<bool>("Pt_fixed", false);
272  desc.add<bool>("Z_fixed", true);
273  desc.add<double>("Pt_min", 1.5);
274  desc.add<double>("DeltaZ", 15.9);
275  desc.add<double>("DeltaEta", 0.2);
276  desc.add<double>("DeltaPhi", 0.2);
277  desc.add<int>("maxRegions", 1);
278  desc.add<bool>("precise", true);
279  desc.add<edm::InputTag>("input", edm::InputTag("hltL2Muons", "UpdatedAtVtx"));
280 }
void MuonTrackingRegionBuilder::fillDescriptionsOffline ( edm::ParameterSetDescription descriptions)
static

Definition at line 282 of file MuonTrackingRegionBuilder.cc.

References edm::ParameterSetDescription::add(), and HLT_2018_cff::InputTag.

Referenced by HIMuonTrackingRegionProducer::fillDescriptions(), and fillDescriptions().

282  {
283  desc.add<double>("EtaR_UpperLimit_Par1", 0.25);
284  desc.add<double>("DeltaR", 0.2);
285  desc.add<edm::InputTag>("beamSpot", edm::InputTag(""));
286  desc.add<int>("OnDemand", -1);
287  desc.add<edm::InputTag>("vertexCollection", edm::InputTag(""));
288  desc.add<double>("Rescale_phi", 3.0);
289  desc.add<bool>("Eta_fixed", false);
290  desc.add<double>("Rescale_eta", 3.0);
291  desc.add<double>("PhiR_UpperLimit_Par2", 0.2);
292  desc.add<double>("Eta_min", 0.05);
293  desc.add<bool>("Phi_fixed", false);
294  desc.add<double>("Phi_min", 0.05);
295  desc.add<double>("PhiR_UpperLimit_Par1", 0.6);
296  desc.add<double>("EtaR_UpperLimit_Par2", 0.15);
297  desc.add<edm::InputTag>("MeasurementTrackerName", edm::InputTag(""));
298  desc.add<bool>("UseVertex", false);
299  desc.add<double>("Rescale_Dz", 3.0);
300  desc.add<bool>("Pt_fixed", false);
301  desc.add<bool>("Z_fixed", true);
302  desc.add<double>("Pt_min", 1.5);
303  desc.add<double>("DeltaZ", 15.9);
304  desc.add<double>("DeltaEta", 0.2);
305  desc.add<double>("DeltaPhi", 0.2);
306  desc.add<int>("maxRegions", 1);
307  desc.add<bool>("precise", true);
308  desc.add<edm::InputTag>("input", edm::InputTag(""));
309 }
std::unique_ptr< RectangularEtaPhiTrackingRegion > MuonTrackingRegionBuilder::region ( const reco::TrackRef track) const

Define tracking region.

Definition at line 117 of file MuonTrackingRegionBuilder.cc.

Referenced by GlobalTrajectoryBuilderBase::defineRegionOfInterest(), FastTSGFromL2Muon::produce(), region(), HIMuonTrackingRegionProducer::regions(), and regions().

117  {
118  return region(*track);
119 }
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::TrackRef &) const
Define tracking region.
std::unique_ptr<RectangularEtaPhiTrackingRegion> MuonTrackingRegionBuilder::region ( const reco::Track t) const
inline

Definition at line 57 of file MuonTrackingRegionBuilder.h.

References newFWLiteAna::build, fillDescriptions(), region(), and HLT_2018_cff::region.

Referenced by region().

57 { return region(t, *theEvent); }
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::TrackRef &) const
Define tracking region.
std::unique_ptr< RectangularEtaPhiTrackingRegion > MuonTrackingRegionBuilder::region ( const reco::Track staTrack,
const edm::Event ev 
) const

Definition at line 129 of file MuonTrackingRegionBuilder.cc.

References funct::abs(), beamSpotToken, PbPb_ZMuSkimMuonDPG_cff::deltaR, PVValHelper::eta, reco::TrackBase::etaError(), edm::Event::getByToken(), reco::Track::innerMomentum(), edm::EDGetTokenT< T >::isUninitialized(), edm::HandleBase::isValid(), LogDebug, SiStripPI::max, HLTSiStripMonitoring_cff::measurementTracker, min(), beam_dqm_sourceclient-live_cfg::minPt, reco::TrackBase::momentum(), reco::TrackBase::p(), phi, reco::TrackBase::phiError(), edm::Handle< T >::product(), DiDispStaMuonMonitor_cfi::pt, reco::TrackBase::pt(), region(), reco::BeamSpot::sigmaZ(), theDeltaEta, theDeltaPhi, theDeltaR, theEtaMin, theEtaRegionPar1, theEtaRegionPar2, theHalfZ, theMeasurementTrackerToken, theNsigmaDz, theNsigmaEta, theNsigmaPhi, theOnDemand, thePhiMin, thePhiRegionPar1, thePhiRegionPar2, thePrecise, thePtMin, useFixedEta, useFixedPhi, useFixedPt, useFixedZ, useVertex, spclusmultinvestigator_cfi::vertexCollection, vertexCollectionToken, badGlobalMuonTaggersAOD_cff::vtx, reco::BeamSpot::x0(), reco::BeamSpot::y0(), and reco::BeamSpot::z0().

130  {
131  // get track momentum/direction at vertex
132  const math::XYZVector& mom = staTrack.momentum();
133  GlobalVector dirVector(mom.x(), mom.y(), mom.z());
134  double pt = staTrack.pt();
135 
136  // Fix for StandAlone tracks with low momentum
137  const math::XYZVector& innerMomentum = staTrack.innerMomentum();
138  GlobalVector forSmallMomentum(innerMomentum.x(), innerMomentum.y(), innerMomentum.z());
139  if (staTrack.p() <= 1.5) {
140  pt = std::abs(forSmallMomentum.perp());
141  }
142 
143  // initial vertex position - in the following it is replaced with beamspot/vertexing
144  GlobalPoint vertexPos(0.0, 0.0, 0.0);
145  // standard 15.9, if useVertex than use error from vertex
146  double deltaZ = theHalfZ;
147 
148  // retrieve beam spot information
150  bool bsHandleFlag = ev.getByToken(beamSpotToken, bs);
151 
152  // check the validity, otherwise vertexing
153  if (bsHandleFlag && bs.isValid() && !useVertex) {
154  vertexPos = GlobalPoint(bs->x0(), bs->y0(), bs->z0());
155  deltaZ = useFixedZ ? theHalfZ : bs->sigmaZ() * theNsigmaDz;
156  } else {
157  // get originZPos from list of reconstructed vertices (first or all)
159  bool vtxHandleFlag = ev.getByToken(vertexCollectionToken, vertexCollection);
160  // check if there exists at least one reconstructed vertex
161  if (vtxHandleFlag && !vertexCollection->empty()) {
162  // use the first vertex in the collection and assume it is the primary event vertex
163  reco::VertexCollection::const_iterator vtx = vertexCollection->begin();
164  if (!vtx->isFake() && vtx->isValid()) {
165  vertexPos = GlobalPoint(vtx->x(), vtx->y(), vtx->z());
166  deltaZ = useFixedZ ? theHalfZ : vtx->zError() * theNsigmaDz;
167  }
168  }
169  }
170 
171  // inizialize to the maximum possible value
172  double deta = 0.4;
173  double dphi = 0.6;
174 
175  // evaluate the dynamical region if possible
176  deta = theNsigmaEta * (staTrack.etaError());
177  dphi = theNsigmaPhi * (staTrack.phiError());
178 
179  // Region_Parametrizations to take into account possible L2 error matrix inconsistencies
180  double region_dEta = 0;
181  double region_dPhi = 0;
182  double eta = 0;
183  double phi = 0;
184 
185  // eta, pt parametrization from MC study (circa 2009?)
186  if (pt <= 10.) {
187  // angular coefficients
188  float acoeff_Phi = (thePhiRegionPar2 - thePhiRegionPar1) / 5;
189  float acoeff_Eta = (theEtaRegionPar2 - theEtaRegionPar1) / 5;
190 
191  eta = theEtaRegionPar1 + (acoeff_Eta) * (pt - 5.);
192  phi = thePhiRegionPar1 + (acoeff_Phi) * (pt - 5.);
193  }
194  // parametrization 2nd bin in pt from MC study
195  if (pt > 10. && pt < 100.) {
196  eta = theEtaRegionPar2;
197  phi = thePhiRegionPar2;
198  }
199  // parametrization 3rd bin in pt from MC study
200  if (pt >= 100.) {
201  // angular coefficients
202  float acoeff_Phi = (thePhiRegionPar1 - thePhiRegionPar2) / 900;
203  float acoeff_Eta = (theEtaRegionPar1 - theEtaRegionPar2) / 900;
204 
205  eta = theEtaRegionPar2 + (acoeff_Eta) * (pt - 100.);
206  phi = thePhiRegionPar2 + (acoeff_Phi) * (pt - 100.);
207  }
208 
209  double region_dPhi1 = std::min(phi, dphi);
210  double region_dEta1 = std::min(eta, deta);
211 
212  // decide to use either a parametrization or a dynamical region
213  region_dPhi = useFixedPhi ? theDeltaPhi : std::max(thePhiMin, region_dPhi1);
214  region_dEta = useFixedEta ? theDeltaEta : std::max(theEtaMin, region_dEta1);
215 
216  float deltaR = theDeltaR;
217  double minPt = useFixedPt ? thePtMin : std::max(thePtMin, pt * 0.6);
218 
223  measurementTracker = hmte.product();
224  }
225 
226  auto region = std::make_unique<RectangularEtaPhiTrackingRegion>(
227  dirVector, vertexPos, minPt, deltaR, deltaZ, region_dEta, region_dPhi, theOnDemand, thePrecise, measurementTracker);
228 
229  LogDebug("MuonTrackingRegionBuilder") << "the region parameters are:\n"
230  << "\n dirVector: " << dirVector << "\n vertexPos: " << vertexPos
231  << "\n minPt: " << minPt << "\n deltaR:" << deltaR << "\n deltaZ:" << deltaZ
232  << "\n region_dEta:" << region_dEta << "\n region_dPhi:" << region_dPhi
233  << "\n on demand parameter: " << static_cast<int>(theOnDemand);
234 
235  return region;
236 }
#define LogDebug(id)
double p() const
momentum vector magnitude
Definition: TrackBase.h:599
double z0() const
z coordinate
Definition: BeamSpot.h:65
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
double etaError() const
error on eta
Definition: TrackBase.h:710
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:629
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::TrackRef &) const
Define tracking region.
double pt() const
track transverse momentum
Definition: TrackBase.h:602
double phiError() const
error on phi
Definition: TrackBase.h:713
RectangularEtaPhiTrackingRegion::UseMeasurementTracker theOnDemand
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
T min(T a, T b)
Definition: MathUtil.h:58
bool isValid() const
Definition: HandleBase.h:70
T const * product() const
Definition: Handle.h:69
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
double sigmaZ() const
sigma z
Definition: BeamSpot.h:76
const math::XYZVector & innerMomentum() const
momentum vector at the innermost hit position
Definition: Track.h:59
edm::EDGetTokenT< reco::VertexCollection > vertexCollectionToken
double y0() const
y coordinate
Definition: BeamSpot.h:63
bool isUninitialized() const
Definition: EDGetToken.h:70
edm::EDGetTokenT< MeasurementTrackerEvent > theMeasurementTrackerToken
double x0() const
x coordinate
Definition: BeamSpot.h:61
std::vector< std::unique_ptr< TrackingRegion > > MuonTrackingRegionBuilder::regions ( const edm::Event ev,
const edm::EventSetup es 
) const
overridevirtual

Create Region of Interest.

Implements TrackingRegionProducer.

Definition at line 98 of file MuonTrackingRegionBuilder.cc.

References edm::Event::getByToken(), inputCollectionToken, region(), mps_fire::result, theMaxRegions, and PDWG_EXOHSCP_cff::tracks.

99  {
100  std::vector<std::unique_ptr<TrackingRegion>> result;
101 
103  ev.getByToken(inputCollectionToken, tracks);
104 
105  int nRegions = 0;
106  for (auto it = tracks->cbegin(), ed = tracks->cend(); it != ed && nRegions < theMaxRegions; ++it) {
107  result.push_back(region(*it, ev));
108  nRegions++;
109  }
110 
111  return result;
112 }
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::TrackRef &) const
Define tracking region.
edm::EDGetTokenT< reco::TrackCollection > inputCollectionToken
void MuonTrackingRegionBuilder::setEvent ( const edm::Event event)
virtual

Pass the Event to the algo at each event.

Definition at line 124 of file MuonTrackingRegionBuilder.cc.

References event(), and theEvent.

Referenced by FastTSGFromL2Muon::produce(), HIMuonTrackingRegionProducer::regions(), and GlobalTrajectoryBuilderBase::setEvent().

124 { theEvent = &event; }
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past

Member Data Documentation

edm::EDGetTokenT<reco::BeamSpot> MuonTrackingRegionBuilder::beamSpotToken
private

Definition at line 101 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

edm::EDGetTokenT<reco::TrackCollection> MuonTrackingRegionBuilder::inputCollectionToken
private

Definition at line 103 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and regions().

double MuonTrackingRegionBuilder::theDeltaEta
private

Definition at line 97 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theDeltaPhi
private

Definition at line 96 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theDeltaR
private

Definition at line 94 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theEtaMin
private

Definition at line 93 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theEtaRegionPar1
private

Definition at line 86 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theEtaRegionPar2
private

Definition at line 87 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

const edm::Event* MuonTrackingRegionBuilder::theEvent
private

Definition at line 71 of file MuonTrackingRegionBuilder.h.

Referenced by setEvent().

double MuonTrackingRegionBuilder::theHalfZ
private

Definition at line 95 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

int MuonTrackingRegionBuilder::theMaxRegions
private

Definition at line 80 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and regions().

edm::EDGetTokenT<MeasurementTrackerEvent> MuonTrackingRegionBuilder::theMeasurementTrackerToken
private

Definition at line 100 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theNsigmaDz
private

Definition at line 84 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theNsigmaEta
private

Definition at line 82 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::theNsigmaPhi
private

Definition at line 83 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

RectangularEtaPhiTrackingRegion::UseMeasurementTracker MuonTrackingRegionBuilder::theOnDemand
private

Definition at line 99 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::thePhiMin
private

Definition at line 92 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::thePhiRegionPar1
private

Definition at line 88 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::thePhiRegionPar2
private

Definition at line 89 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::thePrecise
private

Definition at line 78 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

double MuonTrackingRegionBuilder::thePtMin
private

Definition at line 91 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::useFixedEta
private

Definition at line 77 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::useFixedPhi
private

Definition at line 76 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::useFixedPt
private

Definition at line 75 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::useFixedZ
private

Definition at line 74 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

bool MuonTrackingRegionBuilder::useVertex
private

Definition at line 73 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().

edm::EDGetTokenT<reco::VertexCollection> MuonTrackingRegionBuilder::vertexCollectionToken
private

Definition at line 102 of file MuonTrackingRegionBuilder.h.

Referenced by build(), and region().