1 #ifndef ParticleFlowCandidate_PFCandidate_h 2 #define ParticleFlowCandidate_PFCandidate_h 9 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__) 416 double vx()
const override {
return vertex().x(); }
417 double vy()
const override {
return vertex().y(); }
418 double vz()
const override {
return vertex().z(); }
450 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__) 549 unsigned int iMask,
unsigned int iBit,
edm::ProductID& oProdID,
size_t& oIndex,
size_t& aIndex)
const;
float mva_e_mu() const
mva for electron-muon discrimination
void set_dnn_e_sigIsolated(float mva)
~PFCandidate() override
destructor
reco::PFDisplacedVertexRef displacedVertexRef(Flags type) const
float deltaP_
uncertainty on 3-momentum
void setPs2Energy(float e2)
set corrected PS2 energy
reco::GsfTrackRef gsfTrackRef() const
void setDeltaP(double dp)
set uncertainty on momentum
friend std::ostream & operator<<(std::ostream &out, const PFCandidate &c)
void setPs1Energy(float e1)
set corrected PS1 energy
ParticleType
particle types
reco::Muon::MuonTrackType muonTrackType_
bool overlap(const Candidate &) const override
Polymorphic overlap.
const edm::EDProductGetter * getter_
void setPFPhotonExtraRef(const reco::PFCandidatePhotonExtraRef &ref)
set the PF Photon Extra Ref
void setGsfElectronRef(const reco::GsfElectronRef &ref)
set GsfElectronRef
void setFlag(Flags theFlag, bool value)
set a given flag
void set_mva_e_mu(float mva)
set mva for electron-muon discrimination
virtual void setSourceCandidatePtr(const CandidatePtr &ptr)
Set the ptr to the source Candidate.
float timeError_
timing information uncertainty (<0 if timing not available)
float mva_nothing_gamma() const
mva for gamma detection
reco::ConversionRef conversionRef() const
return a reference to the original conversion
void set_mva_nothing_gamma(float mva)
set mva for gamma detection
void setPositionAtECALEntrance(const math::XYZPointF &pos)
set position at ECAL entrance
float hcalERatio_
corrected HCAL energy ratio (corrected/raw)
double rawHcalEnergy() const
return raw Hcal energy
const reco::Track * bestTrack() const override
float rawHcalEnergy_
raw HCAL energy
float mva_gamma_nh() const
mva for neutral hadron - gamma discrimination
unsigned flags_
all flags, packed (ecal regional, hcal regional, tracking)
float dzError() const override
uncertainty on dz
float mva_nothing_nh() const
mva for neutral hadron detection
float hcalDepthEnergyFraction(unsigned int depth) const
fraction of hcal energy at a given depth (depth = 1 .. 7)
float dnn_e_bkgTau_
DNN for electron PFid: tau bkg.
float dnn_e_sigNonIsolated_
DNN for electron PFid: non-isolated signal.
float mva_e_mu_
mva for electron-muon discrimination
void set_dnn_gamma(float mva)
double pS2Energy() const
return corrected PS2 energy
float dxyError() const override
uncertainty on dxy
double vy() const override
y coordinate of vertex position
void set_dnn_e_bkgNonIsolated(float mva)
float mva_nothing_nh_
mva for neutral hadron detection
bool isNonnull() const
Checks for non-null.
std::vector< const void * > refsCollectionCache_
const math::XYZPointF & positionAtECALEntrance() const
reco::GsfElectronRef gsfElectronRef() const
return a reference to the corresponding GsfElectron if any
float hoERatio_
corrected HO energy ratio (corrected/raw)
edm::RefVector< reco::PFBlockCollection > Blocks
void setSourceCandidatePtr(const PFCandidatePtr &ptr)
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
float mva_gamma_nh_
mva for neutral hadron - gamma discrimination
float ecalERatio_
corrected ECAL energy ratio (corrected/raw)
double rawHoEnergy() const
return raw Hcal energy
float mva_pi_mu() const
mva for pi-muon discrimination
float mva_pi_mu_
mva for pi-muon discrimination
bool flag(Flags theFlag) const
return a given flag
particle ID component tag
const LorentzVector & p4() const final
four-momentum Lorentz vector
float dnn_e_bkgPhoton_
DNN for electron PFid: photon bkg.
float dnn_e_bkgTau() const
std::vector< ElementInBlock > ElementsInBlocks
float rawEcalEnergy_
raw ECAL energy
float mva_e_pi_
mva for electron-pion discrimination
int pdgId() const final
PDG identifier.
void set_mva_pi_mu(float mva)
set mva for pi-muon discrimination
reco::PFCandidateEGammaExtraRef egammaExtraRef() const
return a reference to the EGamma extra
reco::PhotonRef photonRef() const
return a reference to the corresponding Photon if any
void set_mva_nothing_nh(float mva)
set mva for neutral hadron detection
void set_mva_e_pi(float mvaNI)
std::vector< unsigned long long > refsInfo_
float dnn_e_sigNonIsolated() const
void setDisplacedVertexRef(const reco::PFDisplacedVertexRef &ref, Flags flag)
set displaced vertex reference
std::ostream & operator<<(std::ostream &, BeamSpot beam)
reco::PFCandidatePhotonExtraRef photonExtraRef() const
return a reference to the photon extra
std::vector< unsigned > Elements
const ElementsInBlocks & elementsInBlocks() const
void set_mva_Isolated(float mvaI)
double dxyError() const
error on dxy
float ps1Energy_
corrected PS1 energy
double dzError() const
error on dz
double hcalEnergy() const
return corrected Hcal energy
void addElementInBlock(const reco::PFBlockRef &blockref, unsigned elementIndex)
add an element to the current PFCandidate
void setMuonTrackType(const reco::Muon::MuonTrackType &type)
set the Best Muon Track Ref
void setPFElectronExtraRef(const reco::PFCandidateElectronExtraRef &ref)
set the PF Electron Extra Ref
void setParticleType(ParticleType type)
set Particle Type
unsigned short storedRefsBitPattern_
PFCandidate * clone() const override
return a clone
Abs< T >::type abs(const T &t)
math::XYZTLorentzVector LorentzVector
float dnn_e_sigIsolated() const
float rawHoEnergy_
raw HO energy
double ecalEnergy() const
return corrected Ecal energy
reco::MuonRef muonRef() const
void rescaleMomentum(double rescaleFactor)
particle momentum *= rescaleFactor
float dnn_e_bkgPhoton() const
void set_dnn_e_sigNonIsolated(float mva)
int translateTypeToPdgId(ParticleType type) const
void setEcalEnergy(float eeRaw, float eeCorr)
set corrected Ecal energy
void set_dnn_e_bkgPhoton(float mva)
void setHcalDepthEnergyFractions(const std::array< float, 7 > &fracs)
set the fraction of hcal energy as function of depth (index 0..6 for depth 1..7)
double hoEnergy() const
return corrected Hcal energy
const reco::Muon::MuonTrackType bestMuonTrackType() const
get the Best Muon Track Ref
float dnn_e_sigIsolated_
DNN for electron PFid: isolated signal.
void setGsfTrackRef(const reco::GsfTrackRef &ref)
set gsftrack reference
reco::VertexCompositeCandidateRef v0Ref() const
return a reference to the original conversion
PFCandidate()
default constructor
float mva_Isolated() const
XYZPointD XYZPoint
point in space with cartesian internal representation
void setPhotonRef(const reco::PhotonRef &phRef)
set ref to the corresponding reco::Photon if any
void setConversionRef(const reco::ConversionRef &ref)
set ref to original reco conversion
void set_mva_gamma_nh(float mva)
set mva for neutral hadron - gamma discrimination
void set_dnn_e_bkgTau(float mva)
float dnn_e_bkgNonIsolated() const
bool getRefInfo(unsigned int iMask, unsigned int iBit, edm::ProductID &oProdID, size_t &oIndex, size_t &aIndex) const
PFCandidate & operator=(PFCandidate const &)
std::atomic< ElementsInBlocks * > elementsInBlocks_
bool isTimeValid() const
do we have a valid time information
void setHoEnergy(float eoRaw, float eoCorr)
set corrected Hcal energy
PFCandidatePtr sourcePtr_
reference to the source PFCandidate, if any
const Point & vertex() const override
vertex position (overwritten by PF...)
Particle reconstructed by the particle flow algorithm.
float time_
timing information (valid if timeError_ >= 0)
ParticleType translatePdgIdToType(int pdgid) const
void setMuonRef(const reco::MuonRef &ref)
set muon reference
std::pair< reco::PFBlockRef, unsigned > ElementInBlock
return indices of elements used in the block
Structure Point Contains parameters of Gaussian fits to DMRs.
math::XYZPointF positionAtECALEntrance_
position at ECAL entrance, from the PFRecTrack
float mva_nothing_gamma_
mva for gamma detection
static constexpr float bigMva_
void setPFEGammaExtraRef(const reco::PFCandidateEGammaExtraRef &ref)
set the PF EGamma Extra Ref
double pS1Energy() const
return corrected PS1 energy
static unsigned int const shift
float ps2Energy_
corrected PS2 energy
reco::PFCandidateElectronExtraRef electronExtraRef() const
return a reference to the electron extra
reco::TrackRef trackRef() const
void setSuperClusterRef(const reco::SuperClusterRef &scRef)
const math::XYZPoint & vertexLegacy(PFCandidate::PFVertexType vertexType) const
double rawEcalEnergy() const
return corrected Ecal energy
MuonTrackType
map for Global Muon refitters
void setV0Ref(const reco::VertexCompositeCandidateRef &ref)
set ref to original reco conversion
double vz() const override
z coordinate of vertex position
void setTrackRef(const reco::TrackRef &ref)
set track reference
double vx() const override
x coordinate of vertex position
float dnn_e_bkgNonIsolated_
DNN for electron PFid: non-isolated bkg.
double deltaP() const
uncertainty on 3-momentum
void setTime(float time, float timeError=0.f)
the timing information
Elements elementsStorage_
CandidatePtr sourceCandidatePtr(size_type i) const override
void setHcalEnergy(float ehRaw, float ehCorr)
set corrected Hcal energy
reco::SuperClusterRef superClusterRef() const
return a reference to the corresponding SuperCluster if any
int Charge
electric charge type
size_t numberOfSourceCandidatePtrs() const override
float mva_e_pi() const
mva for electron-pion discrimination
const std::array< float, 7 > & hcalDepthEnergyFractions() const
fraction of hcal energy at a given depth (index 0..6 for depth 1..7)
std::array< float, 7 > hcalDepthEnergyFractions_
#define GET_CANDIDATE_COMPONENT(CAND, TYPE, FUN, TAG)
void storeRefInfo(unsigned int iMask, unsigned int iBit, bool iIsValid, const edm::RefCore &iCore, size_t iKey, const edm::EDProductGetter *)
virtual ParticleType particleId() const