1 #ifndef EgammaCandidates_Photon_h 2 #define EgammaCandidates_Photon_h 176 hcalDepth1OverEcal(0),
177 hcalDepth2OverEcal(0),
178 hcalDepth1OverEcalBc(0),
179 hcalDepth2OverEcalBc(0),
250 : nSaturatedXtals(0), isSeedSaturated(
false) {};
280 scEcalEnergyError(999.),
281 scEcalP4(0., 0., 0., 0.),
283 phoEcalEnergyError(999.),
284 phoEcalP4(0., 0., 0., 0.),
285 regression1Energy(0.),
286 regression1EnergyError(999.),
287 regression1P4(0.,0.,0.,0.),
288 regression2Energy(0.),
289 regression2EnergyError(999.),
290 regression2P4(0.,0.,0.,0.),
383 hcalDepth1TowerSumEt(0),
384 hcalDepth2TowerSumEt(0),
386 hcalDepth1TowerSumEtBc(0),
387 hcalDepth2TowerSumEtBc(0),
388 trkSumPtSolidCone(0),
389 trkSumPtHollowCone(0),
471 chargedHadronIsoWrongVtx(0),
475 sumChargedParticlePt(0),
476 sumNeutralHadronEtHighThreshold(0),
477 sumPhotonEtHighThreshold(0),
515 nClusterOutsideMustache(-1),
516 etOutsideMustache(-999999999.),
MIPVariables mipVariableBlock_
void setPflowIsolationVariables(const PflowIsolationVariables &pfisol)
Set Particle Flow Isolation variables.
float hcalDepth1TowerSumEtBcConeDR03() const
Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
float hcalDepth1TowerSumEtBc
float hcalTowerSumEtConeDR04() const
Hcal isolation sum.
SaturationInfo saturationInfo_
float hcalDepth1TowerSumEt
void setMIPVariables(const MIPVariables &mipVar)
set mip Variables
float trkSumPtSolidConeDR03() const
float hcalDepth1TowerSumEtConeDR04() const
Hcal-Depth1 isolation sum.
ShowerShape full5x5_showerShapeBlock_
PflowIsolationVariables pfIsolation_
float hcalDepth1TowerSumEtConeDR03() const
Hcal-Depth1 isolation sum.
std::vector< CaloTowerDetId > hcalTowersBehindClusters
void setCandidateP4type(const P4type type)
const EnergyCorrections & energyCorrections() const
float chargedHadronIso() const
Accessors for Particle Flow Isolation variables.
float sumChargedParticlePt
sum-pt of charged Particles(inludes e/mu)
bool isEBGap() const
true if photon is in EB, and inside the boundaries in super crystals/modules
void setCorrectedEnergy(P4type type, float E, float dE, bool toCand=true)
float neutralHadronIso() const
float full5x5_r2x5() const
float hcalTowerSumEtConeDR03() const
Hcal isolation sum.
float sumNeutralHadronEtHighThreshold() const
const SaturationInfo & saturationInfo() const
reco::ConversionRefVector conversionsOneLeg() const
vector of references to one leg Conversion's
float sumNeutralHadronEtHighThreshold
sum pt of neutral hadrons with a higher threshold
float sumPhotonEtHighThreshold
sum pt of PF photons with a higher threshold
float hcalDepth2OverEcalBc
float trkSumPtSolidConeDR04() const
int nTrkSolidConeDR03() const
float full5x5_e2x5() const
float e1x5() const
Shower shape variables.
bool overlap(const Candidate &) const override
check overlap with another candidate
bool isEBEEGap() const
true if photon is in boundary between EB and EE
float ecalRecHitSumEtConeDR04() const
Photon * clone() const override
returns a clone of the candidate
void setSaturationInfo(const SaturationInfo &s)
float full5x5_r1x5() const
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
float trkSumPtHollowConeDR03() const
float regression2EnergyError
float hcalDepth2TowerSumEt
reco::SuperClusterRef superCluster() const override
Ref to SuperCluster.
float full5x5_maxEnergyXtal() const
float full5x5_sigmaEtaEta() const
bool isPhoton() const override
Implement Candidate method for particle species.
float sumPUPt
sum pt of charged Particles not from PV (for Pu corrections)
IsolationVariables isolationR03_
int conversionTrackProvenance(const edm::RefToBase< reco::Track > &convTrack) const
Photon()
default constructor
float hadronicDepth2OverEm() const
the hadronic release in depth2 over electromagnetic fraction
void setVertex(const Point &vertex) override
set primary event vertex used to define photon direction
float mipIntercept() const
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
float full5x5_e1x5() const
full5x5 Shower shape variables
float full5x5_e3x3() const
float hadTowDepth1OverEm() const
the ration of hadronic energy in towers depth1 behind the BCs in the SC and the SC energy ...
float hcalPFClusterIso() const
float ecalPFClusterIso() const
LorentzVector regression2P4
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
IsolationVariables isolationR04_
void setPhotonCore(const reco::PhotonCoreRef &photonCore)
float full5x5_sigmaIetaIeta() const
float hcalDepth2TowerSumEtBcConeDR04() const
Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
reco::ConversionRefVector conversions() const
vector of references to Conversion's
PflowIsolationVariables()
float hcalTowerSumEtBcConeDR04() const
Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
void setEnergyCorrections(const EnergyCorrections &e)
bool isStandardPhoton() const
void setPflowIDVariables(const PflowIDVariables &pfid)
float sigmaIetaIeta() const
const Point & vertex() const override
vertex position (overwritten by PF...)
EnergyCorrections eCorrections_
float hadTowDepth2OverEm() const
the ration of hadronic energy in towers depth2 behind the BCs in the SC and the SC energy ...
void setShowerShapeVariables(const ShowerShape &a)
float sigmaEtaEta() const
const LorentzVector & p4() const final
four-momentum Lorentz vector
float sumChargedParticlePt() const
float hadTowOverEm() const
the ration of hadronic energy in towers behind the BCs in the SC and the SC energy ...
int nTrkHollowConeDR04() const
float hcalDepth2TowerSumEtConeDR03() const
Hcal-Depth2 isolation sum.
int nTrkHollowConeDR03() const
bool isPFlowPhoton() const
Retrieve photonCore attributes.
float hadronicOverEm() const
the total hadronic over electromagnetic fraction
~Photon() override
destructor
float mipTotEnergy() const
float chargedHadronIsoWrongVtx
math::XYZPointF caloPosition() const
position in ECAL: this is th SC position if r9<0.93. If r8>0.93 is position of seed BasicCluster taki...
float hcalTowerSumEtBcConeDR03() const
Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
FiducialFlags fiducialFlagBlock_
float getCorrectedEnergyError(P4type type) const
float hcalDepth2TowerSumEtBc
P4type getCandidateP4type() const
float etOutsideMustache() const
float hadronicDepth1OverEm() const
the hadronic release in depth1 over electromagnetic fraction
bool hasConversionTracks() const
Bool flagging photons with a vector of refereces to conversions with size >0.
LorentzVector regression1P4
float hcalDepth2TowerSumEtConeDR04() const
Hcal-Depth2 isolation sum.
bool isEEGap() const
true if photon is in EE, and inside the boundaries in supercrystal/D
float regression1EnergyError
float hcalDepth1OverEcalBc
float chargedHadronIsoWrongVtx() const
bool hasPixelSeed() const
Bool flagging photons having a non-zero size vector of Ref to electornPixel seeds.
float hcalDepth1TowerSumEtBcConeDR04() const
Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
void setFiducialVolumeFlags(const FiducialFlags &a)
set flags for photons in the ECAL fiducial volume
float sumPhotonEtHighThreshold() const
int nTrkSolidConeDR04() const
math::XYZTLorentzVector LorentzVector
Lorentz vector.
float getCorrectedEnergy(P4type type) const
float trkSumPtHollowConeDR04() const
void full5x5_setShowerShapeVariables(const ShowerShape &a)
float ecalRecHitSumEtConeDR03() const
Isolation variables in cone dR=0.3.
const ShowerShape & full5x5_showerShapeVariables() const
int nClusterOutsideMustache() const
reco::ElectronSeedRefVector electronPixelSeeds() const
reference to electron Pixel seed
float hcalDepth2TowerSumEtBcConeDR03() const
Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
const std::vector< CaloTowerDetId > & hcalTowersBehindClusters() const
math::XYZPoint Point
point in the space
float isSeedSaturated() const
reco::SuperClusterRef parentSuperCluster() const
Ref to PFlow SuperCluster.
ShowerShape showerShapeBlock_
const PflowIsolationVariables & getPflowIsolationVariables() const
Get Particle Flow Isolation variables block.
float mipChi2() const
MIP variables.
const ShowerShape & showerShapeVariables() const
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
float full5x5_e5x5() const
void setP4(const LorentzVector &p4) final
set 4-momentum
int nClusterOutsideMustache
float nSaturatedXtals() const
void setIsolationVariables(const IsolationVariables &isolInDr04, const IsolationVariables &isolInDr03)
set relevant isolation variables
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
math::XYZPoint Point
point in the space
float maxEnergyXtal() const