CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
PrimaryVertexAssignment Class Reference

#include <PrimaryVertexAssignment.h>

Public Types

enum  Quality {
  UsedInFit = 7, PrimaryDz = 6, PrimaryV0 = 5, BTrack = 4,
  Unused = 3, OtherDz = 2, NotReconstructedPrimary = 1, Unassigned = 0
}
 

Public Member Functions

std::pair< int, PrimaryVertexAssignment::QualitychargedHadronVertex (const reco::VertexCollection &vertices, const reco::PFCandidate &pfcand, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
 
std::pair< int, PrimaryVertexAssignment::QualitychargedHadronVertex (const reco::VertexCollection &vertices, const reco::RecoChargedRefCandidate &chcand, const edm::ValueMap< float > *trackTimeTag, const edm::ValueMap< float > *trackTimeResoTag, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
 
std::pair< int, PrimaryVertexAssignment::QualitychargedHadronVertex (const reco::VertexCollection &vertices, const reco::TrackRef &trackRef, const reco::Track *track, float trackTime, float trackTimeResolution, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
 
std::pair< int, PrimaryVertexAssignment::QualitychargedHadronVertex (const reco::VertexCollection &vertices, const reco::TrackRef &trackRef, float trackTime, float trackTimeResolution, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
 
 PrimaryVertexAssignment (const edm::ParameterSet &iConfig)
 
 ~PrimaryVertexAssignment ()
 

Private Attributes

double maxDistanceToJetAxis_
 
double maxDtSigForPrimaryAssignment_
 
double maxDxyForJetAxisAssigment_
 
double maxDxyForNotReconstructedPrimary_
 
double maxDxySigForNotReconstructedPrimary_
 
double maxDzErrorForPrimaryAssignment_
 
double maxDzForJetAxisAssigment_
 
double maxDzForPrimaryAssignment_
 
double maxDzSigForPrimaryAssignment_
 
double maxJetDeltaR_
 
double minJetPt_
 
bool preferHighRanked_
 
bool useTiming_
 

Detailed Description

Definition at line 18 of file PrimaryVertexAssignment.h.

Member Enumeration Documentation

◆ Quality

Enumerator
UsedInFit 
PrimaryDz 
PrimaryV0 
BTrack 
Unused 
OtherDz 
NotReconstructedPrimary 
Unassigned 

Definition at line 20 of file PrimaryVertexAssignment.h.

20  {
21  UsedInFit = 7,
22  PrimaryDz = 6,
23  PrimaryV0 = 5,
24  BTrack = 4,
25  Unused = 3,
26  OtherDz = 2,
28  Unassigned = 0
29  };

Constructor & Destructor Documentation

◆ PrimaryVertexAssignment()

PrimaryVertexAssignment::PrimaryVertexAssignment ( const edm::ParameterSet iConfig)
inline

Definition at line 31 of file PrimaryVertexAssignment.h.

32  : maxDzSigForPrimaryAssignment_(iConfig.getParameter<double>("maxDzSigForPrimaryAssignment")),
33  maxDzForPrimaryAssignment_(iConfig.getParameter<double>("maxDzForPrimaryAssignment")),
34  maxDzErrorForPrimaryAssignment_(iConfig.getParameter<double>("maxDzErrorForPrimaryAssignment")),
35  maxDtSigForPrimaryAssignment_(iConfig.getParameter<double>("maxDtSigForPrimaryAssignment")),
36  maxJetDeltaR_(iConfig.getParameter<double>("maxJetDeltaR")),
37  minJetPt_(iConfig.getParameter<double>("minJetPt")),
38  maxDistanceToJetAxis_(iConfig.getParameter<double>("maxDistanceToJetAxis")),
39  maxDzForJetAxisAssigment_(iConfig.getParameter<double>("maxDzForJetAxisAssigment")),
40  maxDxyForJetAxisAssigment_(iConfig.getParameter<double>("maxDxyForJetAxisAssigment")),
41  maxDxySigForNotReconstructedPrimary_(iConfig.getParameter<double>("maxDxySigForNotReconstructedPrimary")),
42  maxDxyForNotReconstructedPrimary_(iConfig.getParameter<double>("maxDxyForNotReconstructedPrimary")),
43  useTiming_(iConfig.getParameter<bool>("useTiming")),
44  preferHighRanked_(iConfig.getParameter<bool>("preferHighRanked")) {}

◆ ~PrimaryVertexAssignment()

PrimaryVertexAssignment::~PrimaryVertexAssignment ( )
inline

Definition at line 46 of file PrimaryVertexAssignment.h.

46 {}

Member Function Documentation

◆ chargedHadronVertex() [1/4]

std::pair<int, PrimaryVertexAssignment::Quality> PrimaryVertexAssignment::chargedHadronVertex ( const reco::VertexCollection vertices,
const reco::PFCandidate pfcand,
const edm::View< reco::Candidate > &  jets,
const TransientTrackBuilder builder 
) const
inline

Definition at line 67 of file PrimaryVertexAssignment.h.

70  {
71  float time = 0, timeResolution = -1;
72  if (useTiming_ && pfcand.isTimeValid()) {
73  time = pfcand.time();
74  timeResolution = pfcand.timeError();
75  }
76  if (pfcand.gsfTrackRef().isNull()) {
77  if (pfcand.trackRef().isNull())
78  return std::pair<int, PrimaryVertexAssignment::Quality>(-1, PrimaryVertexAssignment::Unassigned);
79  else
80  return chargedHadronVertex(vertices, pfcand.trackRef(), time, timeResolution, jets, builder);
81  }
82  return chargedHadronVertex(
83  vertices, reco::TrackRef(), &(*pfcand.gsfTrackRef()), time, timeResolution, jets, builder);
84  }

References chargedHadronVertex(), singleTopDQM_cfi::jets, pfDeepBoostedJetPreprocessParams_cfi::pfcand, ntuplemaker::time, HLT_2018_cff::timeResolution, Unassigned, useTiming_, and pwdgSkimBPark_cfi::vertices.

◆ chargedHadronVertex() [2/4]

std::pair<int, PrimaryVertexAssignment::Quality> PrimaryVertexAssignment::chargedHadronVertex ( const reco::VertexCollection vertices,
const reco::RecoChargedRefCandidate chcand,
const edm::ValueMap< float > *  trackTimeTag,
const edm::ValueMap< float > *  trackTimeResoTag,
const edm::View< reco::Candidate > &  jets,
const TransientTrackBuilder builder 
) const
inline

Definition at line 85 of file PrimaryVertexAssignment.h.

90  {
91  float time = 0, timeResolution = -1;
92  if (useTiming_) {
93  time = (*trackTimeTag)[chcand.track()];
94  timeResolution = (*trackTimeResoTag)[chcand.track()];
95  }
96  if (chcand.track().isNull())
97  return std::pair<int, PrimaryVertexAssignment::Quality>(-1, PrimaryVertexAssignment::Unassigned);
98  return chargedHadronVertex(vertices, chcand.track(), time, timeResolution, jets, builder);
99  }

References chargedHadronVertex(), edm::Ref< C, T, F >::isNull(), singleTopDQM_cfi::jets, ntuplemaker::time, HLT_2018_cff::timeResolution, reco::RecoChargedRefCandidate::track(), Unassigned, useTiming_, and pwdgSkimBPark_cfi::vertices.

◆ chargedHadronVertex() [3/4]

std::pair< int, PrimaryVertexAssignment::Quality > PrimaryVertexAssignment::chargedHadronVertex ( const reco::VertexCollection vertices,
const reco::TrackRef trackRef,
const reco::Track track,
float  trackTime,
float  trackTimeResolution,
const edm::View< reco::Candidate > &  jets,
const TransientTrackBuilder builder 
) const

Definition at line 9 of file PrimaryVertexAssignment.cc.

16  {
17  typedef reco::VertexCollection::const_iterator IV;
19 
20  int iVertex = -1;
21  size_t index = 0;
22  float bestweight = 0;
23  for (auto const& vtx : vertices) {
24  float w = vtx.trackWeight(trackRef);
25  if (w > bestweight) {
26  bestweight = w;
27  iVertex = index;
28  }
29  index++;
30  }
31 
32  bool useTime = useTiming_;
33  if (edm::isNotFinite(time) || timeReso < 1e-6) {
34  useTime = false;
35  time = 0.;
36  timeReso = -1.;
37  }
38 
39  if (preferHighRanked_) {
40  for (IV iv = vertices.begin(); iv != vertices.end(); ++iv) {
41  int ivtx = iv - vertices.begin();
42  if (iVertex == ivtx)
43  return std::pair<int, PrimaryVertexAssignment::Quality>(ivtx, PrimaryVertexAssignment::UsedInFit);
44 
45  double dz = std::abs(track->dz(iv->position()));
46  double dt = std::abs(time - iv->t());
47 
48  bool useTimeVtx = useTime && iv->tError() > 0.;
49 
50  if ((dz < maxDzForPrimaryAssignment_ or dz / track->dzError() < maxDzSigForPrimaryAssignment_) and
51  (!useTimeVtx or dt / timeReso < maxDtSigForPrimaryAssignment_)) {
52  return std::pair<int, PrimaryVertexAssignment::Quality>(ivtx, PrimaryVertexAssignment::PrimaryDz);
53  }
54  }
55  }
56 
57  if (iVertex >= 0)
58  return std::pair<int, PrimaryVertexAssignment::Quality>(iVertex, PrimaryVertexAssignment::UsedInFit);
59 
60  double distmin = std::numeric_limits<double>::max();
61  double dzmin = std::numeric_limits<double>::max();
62  double dtmin = std::numeric_limits<double>::max();
63  int vtxIdMinSignif = -1;
64  for (IV iv = vertices.begin(); iv != vertices.end(); ++iv) {
65  double dz = std::abs(track->dz(iv->position()));
66  double dt = std::abs(time - iv->t());
67 
68  double dzsig = dz / track->dzError();
69  double dist = dzsig * dzsig;
70 
71  bool useTimeVtx = useTime && iv->tError() > 0.;
72  if (useTime && !useTimeVtx) {
73  dt = timeReso;
74  }
75 
76  if (useTime) {
77  double dtsig = dt / timeReso;
78 
79  dist += dtsig * dtsig;
80  }
81  if (dist < distmin) {
82  distmin = dist;
83  dzmin = dz;
84  dtmin = dt;
85  vtxIdMinSignif = iv - vertices.begin();
86  }
87  }
88 
89  // first use "closest in Z" with tight cuts (targetting primary particles)
90  const float add_cov = vtxIdMinSignif >= 0 ? vertices[vtxIdMinSignif].covariance(2, 2) : 0.f;
91  const float dzE = sqrt(track->dzError() * track->dzError() + add_cov);
92  if (vtxIdMinSignif >= 0 and
93  (dzmin < maxDzForPrimaryAssignment_ and dzmin / dzE < maxDzSigForPrimaryAssignment_ and
94  track->dzError() < maxDzErrorForPrimaryAssignment_) and
95  (!useTime or dtmin / timeReso < maxDtSigForPrimaryAssignment_)) {
96  iVertex = vtxIdMinSignif;
97  }
98 
99  if (iVertex >= 0)
100  return std::pair<int, PrimaryVertexAssignment::Quality>(iVertex, PrimaryVertexAssignment::PrimaryDz);
101 
102  // if track not assigned yet, it could be a b-decay secondary , use jet axis dist criterion
103  // first find the closest jet within maxJetDeltaR_
104  int jetIdx = -1;
105  double minDeltaR = maxJetDeltaR_;
106  for (edm::View<reco::Candidate>::const_iterator ij = jets.begin(); ij != jets.end(); ++ij) {
107  if (ij->pt() < minJetPt_)
108  continue; // skip jets below the jet Pt threshold
109 
110  double deltaR = reco::deltaR(*ij, *track);
111  if (deltaR < minDeltaR and track->dzError() < maxDzErrorForPrimaryAssignment_) {
112  minDeltaR = deltaR;
113  jetIdx = std::distance(jets.begin(), ij);
114  }
115  }
116  // if jet found
117  if (jetIdx != -1) {
118  reco::TransientTrack transientTrack = builder.build(*track);
119  GlobalVector direction(jets.at(jetIdx).px(), jets.at(jetIdx).py(), jets.at(jetIdx).pz());
120  // find the vertex with the smallest distanceToJetAxis that is still within maxDistaneToJetAxis_
121  int vtxIdx = -1;
122  double minDistanceToJetAxis = maxDistanceToJetAxis_;
123  for (IV iv = vertices.begin(); iv != vertices.end(); ++iv) {
124  // only check for vertices that are close enough in Z and for tracks that have not too high dXY
125  if (std::abs(track->dz(iv->position())) > maxDzForJetAxisAssigment_ ||
126  std::abs(track->dxy(iv->position())) > maxDxyForJetAxisAssigment_)
127  continue;
128 
129  double distanceToJetAxis = IPTools::jetTrackDistance(transientTrack, direction, *iv).second.value();
130  if (distanceToJetAxis < minDistanceToJetAxis) {
131  minDistanceToJetAxis = distanceToJetAxis;
132  vtxIdx = std::distance(vertices.begin(), iv);
133  }
134  }
135  if (vtxIdx >= 0) {
136  iVertex = vtxIdx;
137  }
138  }
139  if (iVertex >= 0)
140  return std::pair<int, PrimaryVertexAssignment::Quality>(iVertex, PrimaryVertexAssignment::BTrack);
141 
142  // if the track is not compatible with other PVs but is compatible with the BeamSpot, we may simply have not reco'ed the PV!
143  // we still point it to the closest in Z, but flag it as possible orphan-primary
144  if (!vertices.empty() && std::abs(track->dxy(vertices[0].position())) < maxDxyForNotReconstructedPrimary_ &&
145  std::abs(track->dxy(vertices[0].position()) / track->dxyError()) < maxDxySigForNotReconstructedPrimary_)
146  return std::pair<int, PrimaryVertexAssignment::Quality>(vtxIdMinSignif,
148 
149  //FIXME: here we could better handle V0s and NucInt
150 
151  // all other tracks could be non-B secondaries and we just attach them with closest Z
152  if (vtxIdMinSignif >= 0)
153  return std::pair<int, PrimaryVertexAssignment::Quality>(vtxIdMinSignif, PrimaryVertexAssignment::OtherDz);
154  //If for some reason even the dz failed (when?) we consider the track not assigned
155  return std::pair<int, PrimaryVertexAssignment::Quality>(-1, PrimaryVertexAssignment::Unassigned);
156 }

References funct::abs(), BTrack, TransientTrackBuilder::build(), reco::deltaR(), PbPb_ZMuSkimMuonDPG_cff::deltaR, HLT_2018_cff::distance, dt, PVValHelper::dz, MillePedeFileConverter_cfg::e, edm::isNotFinite(), electrons_cff::jetIdx, singleTopDQM_cfi::jets, IPTools::jetTrackDistance(), SiStripPI::max, maxDistanceToJetAxis_, maxDtSigForPrimaryAssignment_, maxDxyForJetAxisAssigment_, maxDxyForNotReconstructedPrimary_, maxDxySigForNotReconstructedPrimary_, maxDzErrorForPrimaryAssignment_, maxDzForJetAxisAssigment_, maxDzForPrimaryAssignment_, maxDzSigForPrimaryAssignment_, maxJetDeltaR_, HLT_2018_cff::minDeltaR, minJetPt_, NotReconstructedPrimary, or, OtherDz, preferHighRanked_, PrimaryDz, mathSSE::sqrt(), ntuplemaker::time, HLT_2018_cff::track, Unassigned, UsedInFit, useTiming_, pwdgSkimBPark_cfi::vertices, badGlobalMuonTaggersAOD_cff::vtx, and w.

Referenced by chargedHadronVertex(), and PrimaryVertexSorter< ParticlesCollection >::runAlgo().

◆ chargedHadronVertex() [4/4]

std::pair<int, PrimaryVertexAssignment::Quality> PrimaryVertexAssignment::chargedHadronVertex ( const reco::VertexCollection vertices,
const reco::TrackRef trackRef,
float  trackTime,
float  trackTimeResolution,
const edm::View< reco::Candidate > &  jets,
const TransientTrackBuilder builder 
) const
inline

Definition at line 57 of file PrimaryVertexAssignment.h.

63  {
64  return chargedHadronVertex(vertices, trackRef, &(*trackRef), trackTime, trackTimeResolution, jets, builder);
65  }

References chargedHadronVertex(), singleTopDQM_cfi::jets, and pwdgSkimBPark_cfi::vertices.

Member Data Documentation

◆ maxDistanceToJetAxis_

double PrimaryVertexAssignment::maxDistanceToJetAxis_
private

Definition at line 108 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDtSigForPrimaryAssignment_

double PrimaryVertexAssignment::maxDtSigForPrimaryAssignment_
private

Definition at line 105 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDxyForJetAxisAssigment_

double PrimaryVertexAssignment::maxDxyForJetAxisAssigment_
private

Definition at line 110 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDxyForNotReconstructedPrimary_

double PrimaryVertexAssignment::maxDxyForNotReconstructedPrimary_
private

Definition at line 112 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDxySigForNotReconstructedPrimary_

double PrimaryVertexAssignment::maxDxySigForNotReconstructedPrimary_
private

Definition at line 111 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDzErrorForPrimaryAssignment_

double PrimaryVertexAssignment::maxDzErrorForPrimaryAssignment_
private

Definition at line 104 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDzForJetAxisAssigment_

double PrimaryVertexAssignment::maxDzForJetAxisAssigment_
private

Definition at line 109 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDzForPrimaryAssignment_

double PrimaryVertexAssignment::maxDzForPrimaryAssignment_
private

Definition at line 103 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxDzSigForPrimaryAssignment_

double PrimaryVertexAssignment::maxDzSigForPrimaryAssignment_
private

Definition at line 102 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ maxJetDeltaR_

double PrimaryVertexAssignment::maxJetDeltaR_
private

Definition at line 106 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ minJetPt_

double PrimaryVertexAssignment::minJetPt_
private

Definition at line 107 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ preferHighRanked_

bool PrimaryVertexAssignment::preferHighRanked_
private

Definition at line 114 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

◆ useTiming_

bool PrimaryVertexAssignment::useTiming_
private

Definition at line 113 of file PrimaryVertexAssignment.h.

Referenced by chargedHadronVertex().

Vector3DBase
Definition: Vector3DBase.h:8
reco::Vertex::trackRef_iterator
std::vector< TrackBaseRef >::const_iterator trackRef_iterator
The iteratator for the vector<TrackRef>
Definition: Vertex.h:38
PrimaryVertexAssignment::preferHighRanked_
bool preferHighRanked_
Definition: PrimaryVertexAssignment.h:114
PrimaryVertexAssignment::OtherDz
Definition: PrimaryVertexAssignment.h:26
edm::isNotFinite
constexpr bool isNotFinite(T x)
Definition: isFinite.h:9
edm::Ref::isNull
bool isNull() const
Checks for null.
Definition: Ref.h:235
PrimaryVertexAssignment::useTiming_
bool useTiming_
Definition: PrimaryVertexAssignment.h:113
PrimaryVertexAssignment::PrimaryDz
Definition: PrimaryVertexAssignment.h:22
PrimaryVertexAssignment::maxDtSigForPrimaryAssignment_
double maxDtSigForPrimaryAssignment_
Definition: PrimaryVertexAssignment.h:105
HLT_2018_cff.distance
distance
Definition: HLT_2018_cff.py:6417
singleTopDQM_cfi.jets
jets
Definition: singleTopDQM_cfi.py:42
PrimaryVertexAssignment::maxDzForPrimaryAssignment_
double maxDzForPrimaryAssignment_
Definition: PrimaryVertexAssignment.h:103
PrimaryVertexAssignment::BTrack
Definition: PrimaryVertexAssignment.h:24
PrimaryVertexAssignment::maxDxySigForNotReconstructedPrimary_
double maxDxySigForNotReconstructedPrimary_
Definition: PrimaryVertexAssignment.h:111
edm::Ref< TrackCollection >
pfDeepBoostedJetPreprocessParams_cfi.pfcand
pfcand
Definition: pfDeepBoostedJetPreprocessParams_cfi.py:8
dt
float dt
Definition: AMPTWrapper.h:136
PrimaryVertexAssignment::PrimaryV0
Definition: PrimaryVertexAssignment.h:23
PrimaryVertexAssignment::maxDistanceToJetAxis_
double maxDistanceToJetAxis_
Definition: PrimaryVertexAssignment.h:108
PrimaryVertexAssignment::maxDzForJetAxisAssigment_
double maxDzForJetAxisAssigment_
Definition: PrimaryVertexAssignment.h:109
PrimaryVertexAssignment::maxDzErrorForPrimaryAssignment_
double maxDzErrorForPrimaryAssignment_
Definition: PrimaryVertexAssignment.h:104
w
const double w
Definition: UKUtility.cc:23
HLT_2018_cff.minDeltaR
minDeltaR
Definition: HLT_2018_cff.py:24818
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
PrimaryVertexAssignment::Unassigned
Definition: PrimaryVertexAssignment.h:28
PrimaryVertexAssignment::maxJetDeltaR_
double maxJetDeltaR_
Definition: PrimaryVertexAssignment.h:106
HLT_2018_cff.timeResolution
timeResolution
Definition: HLT_2018_cff.py:6732
PbPb_ZMuSkimMuonDPG_cff.deltaR
deltaR
Definition: PbPb_ZMuSkimMuonDPG_cff.py:63
badGlobalMuonTaggersAOD_cff.vtx
vtx
Definition: badGlobalMuonTaggersAOD_cff.py:5
IPTools::jetTrackDistance
std::pair< double, Measurement1D > jetTrackDistance(const reco::TransientTrack &track, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:206
PrimaryVertexAssignment::maxDzSigForPrimaryAssignment_
double maxDzSigForPrimaryAssignment_
Definition: PrimaryVertexAssignment.h:102
PrimaryVertexAssignment::chargedHadronVertex
std::pair< int, PrimaryVertexAssignment::Quality > chargedHadronVertex(const reco::VertexCollection &vertices, const reco::TrackRef &trackRef, const reco::Track *track, float trackTime, float trackTimeResolution, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
Definition: PrimaryVertexAssignment.cc:9
electrons_cff.jetIdx
jetIdx
Definition: electrons_cff.py:356
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
PrimaryVertexAssignment::maxDxyForNotReconstructedPrimary_
double maxDxyForNotReconstructedPrimary_
Definition: PrimaryVertexAssignment.h:112
PrimaryVertexAssignment::maxDxyForJetAxisAssigment_
double maxDxyForJetAxisAssigment_
Definition: PrimaryVertexAssignment.h:110
PrimaryVertexAssignment::minJetPt_
double minJetPt_
Definition: PrimaryVertexAssignment.h:107
PrimaryVertexAssignment::NotReconstructedPrimary
Definition: PrimaryVertexAssignment.h:27
IT
std::vector< LinkConnSpec >::const_iterator IT
Definition: TriggerBoardSpec.cc:5
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
reco::TransientTrack
Definition: TransientTrack.h:19
PVValHelper::dz
Definition: PVValidationHelpers.h:50
or
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
reco::deltaR
constexpr auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
Definition: deltaR.h:30
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
edm::View::const_iterator
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
Definition: View.h:86
TransientTrackBuilder::build
reco::TransientTrack build(const reco::Track *p) const
Definition: TransientTrackBuilder.cc:20
HLT_2018_cff.track
track
Definition: HLT_2018_cff.py:10352
reco::RecoChargedRefCandidate::track
reco::TrackRef track() const
Definition: RecoChargedRefCandidate.h:21
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
PrimaryVertexAssignment::UsedInFit
Definition: PrimaryVertexAssignment.h:21
ntuplemaker.time
time
Definition: ntuplemaker.py:310
PrimaryVertexAssignment::Unused
Definition: PrimaryVertexAssignment.h:25
pwdgSkimBPark_cfi.vertices
vertices
Definition: pwdgSkimBPark_cfi.py:7
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37