1 #ifndef CommonTools_PFCandProducer_PrimaryVertexAssignment_
2 #define CommonTools_PFCandProducer_PrimaryVertexAssignment_
38 minJetPt_(iConfig.getParameter<double>(
"minJetPt")),
44 useTiming_(iConfig.getParameter<bool>(
"useTiming")),
60 float trackTimeResolution,
69 float trackTimeResolution,
77 float trackTimeResolution,
80 return chargedHadronVertex(vertices, trackRef, &(*trackRef), trackTime, trackTimeResolution, jets, builder);
108 time = pfcand.
time();
134 time = (*trackTimeTag)[chcand.
track()];
double maxDtSigForPrimaryAssignment_
std::pair< int, PrimaryVertexAssignment::Quality > chargedHadronVertex(const reco::VertexCollection &vertices, const reco::PFCandidate &pfcand, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
double maxDzForPrimaryAssignment_
double maxDzErrorForPrimaryAssignment_
std::vector< Vertex > VertexCollection
collection of Vertex objects
virtual float time() const
time (wrt nominal zero of the collision)
double maxDxySigForNotReconstructedPrimary_
~PrimaryVertexAssignment()
reco::TrackRef track() const
key_type key() const
Accessor for product key.
const reco::VertexRef vertexRef() const
PrimaryVertexAssignment(const edm::ParameterSet &iConfig)
reco::TrackRef trackRef() const
double maxDistanceToJetAxis_
bool isTimeValid() const
do we have a valid time information
double fDzCutForChargedFromPUVtxs_
const PVAssociationQuality pvAssociationQuality() const
virtual float timeError() const
time measurement uncertainty (-1 if not available)
double maxDzSigForPrimaryAssignment_
double maxDzForJetAxisAssigment_
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
virtual const reco::Track & pseudoTrack() const
double maxDxyForJetAxisAssigment_
std::pair< int, PrimaryVertexAssignment::Quality > 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
bool isNull() const
Checks for null.
bool hasTrackDetails() const
Return true if a bestTrack can be extracted from this Candidate.
double maxDxyForNotReconstructedPrimary_
int fNumOfPUVtxsForCharged_
Particle reconstructed by the particle flow algorithm.
std::pair< int, PrimaryVertexAssignment::Quality > chargedHadronVertex(const reco::VertexCollection &vertices, const pat::PackedCandidate &pfcand, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const
reco::GsfTrackRef gsfTrackRef() const
std::pair< int, PrimaryVertexAssignment::Quality > chargedHadronVertex(const reco::VertexCollection &vertices, const reco::TrackRef &trackRef, float trackTime, float trackTimeResolution, const edm::View< reco::Candidate > &jets, const TransientTrackBuilder &builder) const