CMS 3D CMS Logo

Photon.h
Go to the documentation of this file.
1 #ifndef EgammaCandidates_Photon_h
2 #define EgammaCandidates_Photon_h
3 
18 
19 
20 namespace reco {
21 
22  class Photon : public RecoCandidate {
23  public:
25  struct FiducialFlags;
26  struct IsolationVariables;
27  struct ShowerShape;
28  struct MIPVariables;
29  struct SaturationInfo;
30 
32  Photon() : RecoCandidate() { pixelSeed_=false; }
33 
35  Photon ( const Photon&);
36 
38  Photon( const LorentzVector & p4,
39  const Point& caloPos,
40  const PhotonCoreRef & core,
41  const Point & vtx = Point( 0, 0, 0 ) );
42 
44  ~Photon() override;
45 
47  Photon * clone() const override;
48 
52 
53  //
55  //
56  // retrieve provenance
57  bool isPFlowPhoton() const {return this->photonCore()->isPFlowPhoton();}
58  bool isStandardPhoton() const {return this->photonCore()->isStandardPhoton();}
60  reco::SuperClusterRef superCluster() const override;
62  reco::SuperClusterRef parentSuperCluster() const {return this->photonCore()->parentSuperCluster();}
64  reco::ConversionRefVector conversions() const {return this->photonCore()->conversions() ;}
66  pflow=1,
67  both=2};
68 
70  reco::ConversionRefVector conversionsOneLeg() const {return this->photonCore()->conversionsOneLeg() ;}
72  bool hasConversionTracks() const { if (!this->photonCore()->conversions().empty() || !this->photonCore()->conversionsOneLeg().empty()) return true; else return false;}
74  reco::ElectronSeedRefVector electronPixelSeeds() const {return this->photonCore()->electronPixelSeeds();}
76  bool hasPixelSeed() const { if (!(this->photonCore()->electronPixelSeeds()).empty() ) return true; else return false; }
77  int conversionTrackProvenance(const edm::RefToBase<reco::Track>& convTrack) const;
78 
79 
83  void setVertex(const Point & vertex) override;
85  bool isPhoton() const override { return true ; }
86 
87 
88  //=======================================================
89  // Fiducial Flags
90  //=======================================================
92  {
93 
94  //Fiducial flags
95  bool isEB;//Photon is in EB
96  bool isEE;//Photon is in EE
97  bool isEBEtaGap;//Photon is in supermodule/supercrystal eta gap in EB
98  bool isEBPhiGap;//Photon is in supermodule/supercrystal phi gap in EB
99  bool isEERingGap;//Photon is in crystal ring gap in EE
100  bool isEEDeeGap;//Photon is in crystal dee gap in EE
101  bool isEBEEGap;//Photon is in border between EB and EE.
102 
104  isEB(false),
105  isEE(false),
106  isEBEtaGap(false),
107  isEBPhiGap(false),
108  isEERingGap(false),
109  isEEDeeGap(false),
110  isEBEEGap(false)
111 
112  {}
113 
114 
115  };
116 
121  bool isEB() const{return fiducialFlagBlock_.isEB;}
122  // true if photon is in ECAL endcap
123  bool isEE() const{return fiducialFlagBlock_.isEE;}
125  bool isEBGap() const { return (isEBEtaGap() || isEBPhiGap()); }
129  bool isEEGap() const { return (isEERingGap() || isEEDeeGap()); }
133  bool isEBEEGap() const{return fiducialFlagBlock_.isEBEEGap;}
134 
135  //=======================================================
136  // Shower Shape Variables
137  //=======================================================
138 
139  struct ShowerShape
140  {
141  float sigmaEtaEta ;
143  float e1x5 ;
144  float e2x5 ;
145  float e3x3 ;
146  float e5x5 ;
147  float maxEnergyXtal ;
148  float hcalDepth1OverEcal ; // hcal over ecal energy using first hcal depth
149  float hcalDepth2OverEcal ; // hcal over ecal energy using 2nd hcal depth
152  std::vector<CaloTowerDetId> hcalTowersBehindClusters;
154  float effSigmaRR;
157  float e2nd;
158  float eTop;
159  float eLeft;
160  float eRight;
161  float eBottom;
162  float e1x3;
163  float e2x2;
164  float e2x5Max;
165  float e2x5Left;
166  float e2x5Right;
167  float e2x5Top;
168  float e2x5Bottom;
170  : sigmaEtaEta(std::numeric_limits<float>::max()),
171  sigmaIetaIeta(std::numeric_limits<float>::max()),
172  e1x5(0.f),
173  e2x5(0.f),
174  e3x3(0.f),
175  e5x5(0.f),
176  maxEnergyXtal(0.f),
177  hcalDepth1OverEcal(0),
178  hcalDepth2OverEcal(0),
179  hcalDepth1OverEcalBc(0),
180  hcalDepth2OverEcalBc(0),
181  invalidHcal(false),
182  effSigmaRR(std::numeric_limits<float>::max()),
183  sigmaIetaIphi(std::numeric_limits<float>::max()),
184  sigmaIphiIphi(std::numeric_limits<float>::max()),
185  e2nd(0.f),
186  eTop(0.f),
187  eLeft(0.f),
188  eRight(0.f),
189  eBottom(0.f),
190  e1x3(0.f),
191  e2x2(0.f),
192  e2x5Max(0.f),
193  e2x5Left(0.f),
194  e2x5Right(0.f),
195  e2x5Top(0.f),
196  e2x5Bottom(0.f)
197  {}
198  } ;
201 
204 
213 
220  const std::vector<CaloTowerDetId> & hcalTowersBehindClusters() const { return showerShapeBlock_.hcalTowersBehindClusters ; }
223 
225  float e1x5() const {return showerShapeBlock_.e1x5;}
226  float e2x5() const {return showerShapeBlock_.e2x5;}
227  float e3x3() const {return showerShapeBlock_.e3x3;}
228  float e5x5() const {return showerShapeBlock_.e5x5;}
230  float sigmaEtaEta() const {return showerShapeBlock_.sigmaEtaEta;}
234  float r9 () const {return showerShapeBlock_.e3x3/this->superCluster()->rawEnergy();}
235 
246  float full5x5_r9 () const {return full5x5_showerShapeBlock_.e3x3/this->superCluster()->rawEnergy();}
247 
248  //=======================================================
249  // SaturationInfo
250  //=======================================================
251 
252  struct SaturationInfo {
256  : nSaturatedXtals(0), isSeedSaturated(false) {};
257  } ;
258 
259  // accessors
262  const SaturationInfo& saturationInfo() const { return saturationInfo_; }
264 
265  //=======================================================
266  // Energy Determinations
267  //=======================================================
269 
285  scEcalEnergy(0.),
286  scEcalEnergyError(999.),
287  scEcalP4(0., 0., 0., 0.),
288  phoEcalEnergy(0.),
289  phoEcalEnergyError(999.),
290  phoEcalP4(0., 0., 0., 0.),
291  regression1Energy(0.),
292  regression1EnergyError(999.),
293  regression1P4(0.,0.,0.,0.),
294  regression2Energy(0.),
295  regression2EnergyError(999.),
296  regression2P4(0.,0.,0.,0.),
297  candidateP4type(undefined)
298  {}
299  };
300 
301  using RecoCandidate::setP4 ;
302  using RecoCandidate::p4 ;
303 
304  //sets both energy and its uncertainty
305  void setCorrectedEnergy( P4type type, float E, float dE, bool toCand=true );
306  void setP4( P4type type, const LorentzVector & p4, float p4Error, bool setToRecoCandidate ) ;
309 
310  float getCorrectedEnergy( P4type type) const;
311  float getCorrectedEnergyError( P4type type) const ;
313  const LorentzVector& p4( P4type type ) const ;
314  const EnergyCorrections & energyCorrections() const { return eCorrections_ ; }
315 
316  //=======================================================
317  // MIP Variables
318  //=======================================================
319 
321  {
322  float mipChi2;
324  float mipSlope;
327  bool mipIsHalo;
328 
330 
331  mipChi2(0),
332  mipTotEnergy(0),
333  mipSlope(0),
334  mipIntercept(0),
335  mipNhitCone(0),
336  mipIsHalo(false)
337  {}
338 
339  } ;
340 
342  float mipChi2() const {return mipVariableBlock_.mipChi2;}
344  float mipSlope() const {return mipVariableBlock_.mipSlope;}
347  bool mipIsHalo() const {return mipVariableBlock_.mipIsHalo;}
348 
350  void setMIPVariables ( const MIPVariables& mipVar) {mipVariableBlock_= mipVar;}
351 
352 
353 
354  //=======================================================
355  // Isolation Variables
356  //=======================================================
357 
359  {
360  //These are analysis quantities calculated in the PhotonIDAlgo class
361 
362  //EcalRecHit isolation
364  //HcalTower isolation
366  //HcalDepth1Tower isolation
368  //HcalDepth2Tower isolation
370  //HcalTower isolation subtracting the hadronic energy in towers behind the BCs in the SC
372  //HcalDepth1Tower isolation subtracting the hadronic energy in towers behind the BCs in the SC
374  //HcalDepth2Tower isolation subtracting the hadronic energy in towers behind the BCs in the SC
376  //Sum of track pT in a cone of dR
378  //Sum of track pT in a hollow cone of outer radius, inner radius
380  //Number of tracks in a cone of dR
382  //Number of tracks in a hollow cone of outer radius, inner radius
384 
386 
387  ecalRecHitSumEt(0),
388  hcalTowerSumEt(0),
389  hcalDepth1TowerSumEt(0),
390  hcalDepth2TowerSumEt(0),
391  hcalTowerSumEtBc(0),
392  hcalDepth1TowerSumEtBc(0),
393  hcalDepth2TowerSumEtBc(0),
394  trkSumPtSolidCone(0),
395  trkSumPtHollowCone(0),
396  nTrkSolidCone(0),
397  nTrkHollowCone(0)
398 
399  {}
400 
401 
402  };
403 
404 
406  void setIsolationVariables ( const IsolationVariables& isolInDr04, const IsolationVariables& isolInDr03) { isolationR04_ = isolInDr04 ; isolationR03_ = isolInDr03 ;}
407 
423  // Track pT sum
425  //As above, excluding the core at the center of the cone
427  //Returns number of tracks in a cone of dR
429  //As above, excluding the core at the center of the cone
431  //
446  // Track pT sum c
448  //As above, excluding the core at the center of the cone
450  //Returns number of tracks in a cone of dR
452  //As above, excluding the core at the center of the cone
454 
455 
456  //=======================================================
457  // PFlow based Isolation Variables
458  //=======================================================
459 
461  {
462 
463  float chargedHadronIso; // equivalent to sumChargedHadronPt in DataFormats/MuonReco/interface/MuonPFIsolation.h
464  float chargedHadronIsoWrongVtx; // equivalent to sumChargedHadronPt in DataFormats/MuonReco/interface/MuonPFIsolation.h
465  float neutralHadronIso; // equivalent to sumNeutralHadronPt in DataFormats/MuonReco/interface/MuonPFIsolation.h
466  float photonIso ; // equivalent to sumPhotonPt in DataFormats/MuonReco/interface/MuonPFIsolation.h
467  float modFrixione ;
471  float sumPUPt;
472  float sumEcalClusterEt; //sum pt of ecal clusters, vetoing clusters part of photon
473  float sumHcalClusterEt; //sum pt of hcal clusters, vetoing clusters part of photon
475 
476  chargedHadronIso(0),
477  chargedHadronIsoWrongVtx(0),
478  neutralHadronIso(0),
479  photonIso(0),
480  modFrixione(0),
481  sumChargedParticlePt(0),
482  sumNeutralHadronEtHighThreshold(0),
483  sumPhotonEtHighThreshold(0),
484  sumPUPt(0),
485  sumEcalClusterEt(0),
486  sumHcalClusterEt(0)
487  {}
488 
489 
490  };
491 
496  float photonIso() const {return pfIsolation_.photonIso;}
500  float sumPUPt() const {return pfIsolation_.sumPUPt;}
501 
502  //backwards compat functions for pat::Photon
503  float ecalPFClusterIso() const { return pfIsolation_.sumEcalClusterEt; };
504  float hcalPFClusterIso() const { return pfIsolation_.sumHcalClusterEt; };
505 
508 
511 
513  {
514 
517  float mva;
518 
520 
521  nClusterOutsideMustache(-1),
522  etOutsideMustache(-999999999.),
523  mva(-999999999.)
524 
525  {}
526  };
527 
528  // getters
530  float etOutsideMustache() const {return pfID_.etOutsideMustache;}
531  float pfMVA() const {return pfID_.mva;}
532  // setters
533  void setPflowIDVariables ( const PflowIDVariables& pfid ) { pfID_ = pfid;}
534 
535  private:
537  bool overlap( const Candidate & ) const override;
542  //
544  //
555  };
556 
557 }
558 
559 #endif
MIPVariables mipVariableBlock_
Definition: Photon.h:552
type
Definition: HCALResponse.h:21
void setPflowIsolationVariables(const PflowIsolationVariables &pfisol)
Set Particle Flow Isolation variables.
Definition: Photon.h:510
float hcalDepth1TowerSumEtBcConeDR03() const
Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:443
float hcalTowerSumEtConeDR04() const
Hcal isolation sum.
Definition: Photon.h:412
SaturationInfo saturationInfo_
Definition: Photon.h:550
void setMIPVariables(const MIPVariables &mipVar)
set mip Variables
Definition: Photon.h:350
float trkSumPtSolidConeDR03() const
Definition: Photon.h:447
float hcalDepth1TowerSumEtConeDR04() const
Hcal-Depth1 isolation sum.
Definition: Photon.h:414
ShowerShape full5x5_showerShapeBlock_
Definition: Photon.h:549
Definition: Photon.py:1
PflowIsolationVariables pfIsolation_
Definition: Photon.h:553
float hcalDepth1TowerSumEtConeDR03() const
Hcal-Depth1 isolation sum.
Definition: Photon.h:437
std::vector< CaloTowerDetId > hcalTowersBehindClusters
Definition: Photon.h:152
bool isEE() const
Definition: Photon.h:123
bool isEEDeeGap() const
Definition: Photon.h:131
void setCandidateP4type(const P4type type)
Definition: Photon.h:308
const EnergyCorrections & energyCorrections() const
Definition: Photon.h:314
float chargedHadronIso() const
Accessors for Particle Flow Isolation variables.
Definition: Photon.h:493
float sumChargedParticlePt
sum-pt of charged Particles(inludes e/mu)
Definition: Photon.h:468
bool isEBGap() const
true if photon is in EB, and inside the boundaries in super crystals/modules
Definition: Photon.h:125
void setCorrectedEnergy(P4type type, float E, float dE, bool toCand=true)
float neutralHadronIso() const
Definition: Photon.h:495
float e5x5() const
Definition: Photon.h:228
float full5x5_r2x5() const
Definition: Photon.h:245
float hcalTowerSumEtConeDR03() const
Hcal isolation sum.
Definition: Photon.h:435
float sumPUPt() const
Definition: Photon.h:500
float sumNeutralHadronEtHighThreshold() const
Definition: Photon.h:498
const SaturationInfo & saturationInfo() const
Definition: Photon.h:262
reco::ConversionRefVector conversionsOneLeg() const
vector of references to one leg Conversion&#39;s
Definition: Photon.h:70
float sumNeutralHadronEtHighThreshold
sum pt of neutral hadrons with a higher threshold
Definition: Photon.h:469
float sumPhotonEtHighThreshold
sum pt of PF photons with a higher threshold
Definition: Photon.h:470
float trkSumPtSolidConeDR04() const
Definition: Photon.h:424
Definition: __init__.py:1
int nTrkSolidConeDR03() const
Definition: Photon.h:451
float full5x5_e2x5() const
Definition: Photon.h:238
float e1x5() const
Shower shape variables.
Definition: Photon.h:225
bool overlap(const Candidate &) const override
check overlap with another candidate
bool isEBEEGap() const
true if photon is in boundary between EB and EE
Definition: Photon.h:133
float hadronicOverEmValid() const
returns false if hadronicOverEm is not reliably estimated (e.g. because hcal was off or masked) ...
Definition: Photon.h:212
float ecalRecHitSumEtConeDR04() const
Definition: Photon.h:410
Photon * clone() const override
returns a clone of the candidate
void setSaturationInfo(const SaturationInfo &s)
Definition: Photon.h:263
float full5x5_r1x5() const
Definition: Photon.h:244
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float > > XYZPointF
point in space with cartesian internal representation
Definition: Point3D.h:10
float trkSumPtHollowConeDR03() const
Definition: Photon.h:449
reco::SuperClusterRef superCluster() const override
Ref to SuperCluster.
float full5x5_maxEnergyXtal() const
Definition: Photon.h:241
float full5x5_sigmaEtaEta() const
Definition: Photon.h:242
bool isPhoton() const override
Implement Candidate method for particle species.
Definition: Photon.h:85
float sumPUPt
sum pt of charged Particles not from PV (for Pu corrections)
Definition: Photon.h:471
IsolationVariables isolationR03_
Definition: Photon.h:547
int conversionTrackProvenance(const edm::RefToBase< reco::Track > &convTrack) const
ConversionProvenance
Definition: Photon.h:65
float photonIso() const
Definition: Photon.h:496
Photon()
default constructor
Definition: Photon.h:32
float hadronicDepth2OverEm() const
the hadronic release in depth2 over electromagnetic fraction
Definition: Photon.h:210
void setVertex(const Point &vertex) override
set primary event vertex used to define photon direction
float mipIntercept() const
Definition: Photon.h:345
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
Definition: Photon.h:539
float full5x5_e1x5() const
full5x5 Shower shape variables
Definition: Photon.h:237
float full5x5_e3x3() const
Definition: Photon.h:239
float hadTowDepth1OverEm() const
the ration of hadronic energy in towers depth1 behind the BCs in the SC and the SC energy ...
Definition: Photon.h:217
float hcalPFClusterIso() const
Definition: Photon.h:504
float full5x5_r9() const
Definition: Photon.h:246
float ecalPFClusterIso() const
Definition: Photon.h:503
LorentzVector regression2P4
Definition: Photon.h:282
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:50
bool mipIsHalo() const
Definition: Photon.h:347
IsolationVariables isolationR04_
Definition: Photon.h:546
void setPhotonCore(const reco::PhotonCoreRef &photonCore)
Definition: Photon.h:51
float full5x5_sigmaIetaIeta() const
Definition: Photon.h:243
float hcalDepth2TowerSumEtBcConeDR04() const
Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:422
reco::ConversionRefVector conversions() const
vector of references to Conversion&#39;s
Definition: Photon.h:64
float hcalTowerSumEtBcConeDR04() const
Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:418
void setEnergyCorrections(const EnergyCorrections &e)
Definition: Photon.h:307
bool isStandardPhoton() const
Definition: Photon.h:58
bool isEBPhiGap() const
Definition: Photon.h:127
void setPflowIDVariables(const PflowIDVariables &pfid)
Definition: Photon.h:533
float sigmaIetaIeta() const
Definition: Photon.h:231
const Point & vertex() const override
vertex position (overwritten by PF...)
EnergyCorrections eCorrections_
Definition: Photon.h:551
float hadTowOverEmValid() const
returns false if hadTowOverEm is not reliably estimated (e.g. because hcal was off or masked) ...
Definition: Photon.h:222
float hadTowDepth2OverEm() const
the ration of hadronic energy in towers depth2 behind the BCs in the SC and the SC energy ...
Definition: Photon.h:219
void setShowerShapeVariables(const ShowerShape &a)
Definition: Photon.h:202
float e2x5() const
Definition: Photon.h:226
double f[11][100]
float sigmaEtaEta() const
Definition: Photon.h:230
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:99
float sumChargedParticlePt() const
Definition: Photon.h:497
float hadTowOverEm() const
the ration of hadronic energy in towers behind the BCs in the SC and the SC energy ...
Definition: Photon.h:215
int nTrkHollowConeDR04() const
Definition: Photon.h:430
float hcalDepth2TowerSumEtConeDR03() const
Hcal-Depth2 isolation sum.
Definition: Photon.h:439
int nTrkHollowConeDR03() const
Definition: Photon.h:453
bool isPFlowPhoton() const
Retrieve photonCore attributes.
Definition: Photon.h:57
float hadronicOverEm() const
the total hadronic over electromagnetic fraction
Definition: Photon.h:206
~Photon() override
destructor
float mipTotEnergy() const
Definition: Photon.h:343
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...
Definition: Photon.h:81
float r1x5() const
Definition: Photon.h:232
float hcalTowerSumEtBcConeDR03() const
Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:441
FiducialFlags fiducialFlagBlock_
Definition: Photon.h:545
float getCorrectedEnergyError(P4type type) const
P4type getCandidateP4type() const
Definition: Photon.h:312
float etOutsideMustache() const
Definition: Photon.h:530
float hadronicDepth1OverEm() const
the hadronic release in depth1 over electromagnetic fraction
Definition: Photon.h:208
bool hasConversionTracks() const
Bool flagging photons with a vector of refereces to conversions with size >0.
Definition: Photon.h:72
bool pixelSeed_
Definition: Photon.h:543
LorentzVector regression1P4
Definition: Photon.h:279
float hcalDepth2TowerSumEtConeDR04() const
Hcal-Depth2 isolation sum.
Definition: Photon.h:416
bool isEEGap() const
true if photon is in EE, and inside the boundaries in supercrystal/D
Definition: Photon.h:129
float e3x3() const
Definition: Photon.h:227
float chargedHadronIsoWrongVtx() const
Definition: Photon.h:494
bool hasPixelSeed() const
Bool flagging photons having a non-zero size vector of Ref to electornPixel seeds.
Definition: Photon.h:76
float hcalDepth1TowerSumEtBcConeDR04() const
Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:420
void setFiducialVolumeFlags(const FiducialFlags &a)
set flags for photons in the ECAL fiducial volume
Definition: Photon.h:118
float sumPhotonEtHighThreshold() const
Definition: Photon.h:499
int nTrkSolidConeDR04() const
Definition: Photon.h:428
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:37
bool isEERingGap() const
Definition: Photon.h:130
PflowIDVariables pfID_
Definition: Photon.h:554
float getCorrectedEnergy(P4type type) const
bool isEB() const
Definition: Photon.h:121
float trkSumPtHollowConeDR04() const
Definition: Photon.h:426
float r2x5() const
Definition: Photon.h:233
void full5x5_setShowerShapeVariables(const ShowerShape &a)
Definition: Photon.h:203
float ecalRecHitSumEtConeDR03() const
Isolation variables in cone dR=0.3.
Definition: Photon.h:433
fixed size matrix
const ShowerShape & full5x5_showerShapeVariables() const
Definition: Photon.h:200
double a
Definition: hdecay.h:121
int nClusterOutsideMustache() const
Definition: Photon.h:529
float r9() const
Definition: Photon.h:234
reco::ElectronSeedRefVector electronPixelSeeds() const
reference to electron Pixel seed
Definition: Photon.h:74
float hcalDepth2TowerSumEtBcConeDR03() const
Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC...
Definition: Photon.h:445
const std::vector< CaloTowerDetId > & hcalTowersBehindClusters() const
Definition: Photon.h:220
float mipSlope() const
Definition: Photon.h:344
math::XYZPoint Point
point in the space
Definition: Candidate.h:41
float isSeedSaturated() const
Definition: Photon.h:261
int mipNhitCone() const
Definition: Photon.h:346
reco::SuperClusterRef parentSuperCluster() const
Ref to PFlow SuperCluster.
Definition: Photon.h:62
float pfMVA() const
Definition: Photon.h:531
ShowerShape showerShapeBlock_
Definition: Photon.h:548
const PflowIsolationVariables & getPflowIsolationVariables() const
Get Particle Flow Isolation variables block.
Definition: Photon.h:507
float mipChi2() const
MIP variables.
Definition: Photon.h:342
const ShowerShape & showerShapeVariables() const
Definition: Photon.h:199
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:541
float full5x5_e5x5() const
Definition: Photon.h:240
void setP4(const LorentzVector &p4) final
set 4-momentum
float nSaturatedXtals() const
Definition: Photon.h:260
void setIsolationVariables(const IsolationVariables &isolInDr04, const IsolationVariables &isolInDr03)
set relevant isolation variables
Definition: Photon.h:406
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
math::XYZPoint Point
point in the space
Definition: LeafCandidate.h:27
bool isEBEtaGap() const
Definition: Photon.h:126
float maxEnergyXtal() const
Definition: Photon.h:229