CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
reco::Photon Class Reference

#include <Photon.h>

Inheritance diagram for reco::Photon:
reco::RecoCandidate reco::LeafCandidate reco::Candidate pat::PATObject< reco::Photon > pat::Photon

Classes

struct  EnergyCorrections
 
struct  FiducialFlags
 
struct  IsolationVariables
 
struct  MIPVariables
 
struct  PflowIDVariables
 
struct  PflowIsolationVariables
 
struct  ShowerShape
 

Public Types

enum  ConversionProvenance { egamma =0, pflow =1, both =2 }
 
enum  P4type {
  undefined =-1, ecal_standard =0, ecal_photons =1, regression1 =2,
  regression2 = 3
}
 
- Public Types inherited from reco::RecoCandidate
enum  TrackType { noTrackType, recoTrackType, gsfTrackType }
 track type More...
 
- Public Types inherited from reco::LeafCandidate
typedef int Charge
 electric charge type More...
 
typedef CandidateCollection daughters
 collection of daughter candidates More...
 
typedef unsigned int index
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef
math::PtEtaPhiMLorentzVector 
PolarLorentzVector
 Lorentz vector. More...
 
typedef math::XYZVector Vector
 point in the space More...
 
- Public Types inherited from reco::Candidate
enum  { dimension = 3 }
 
enum  { size = dimension * (dimension + 1)/2 }
 matix size More...
 
typedef int Charge
 electric charge type More...
 
typedef candidate::const_iterator const_iterator
 
typedef math::Error< dimension >
::type 
CovarianceMatrix
 covariance error matrix (3x3) More...
 
typedef unsigned int index
 index type More...
 
typedef candidate::iterator iterator
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef
math::PtEtaPhiMLorentzVector 
PolarLorentzVector
 Lorentz vector. More...
 
typedef size_t size_type
 
typedef math::XYZVector Vector
 point in the space More...
 

Public Member Functions

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 taking shower depth for unconverted photon More...
 
float chargedHadronIso () const
 Accessors for Particle Flow Isolation variables. More...
 
float chargedHadronIsoWrongVtx () const
 
virtual Photonclone () const
 returns a clone of the candidate More...
 
reco::ConversionRefVector conversions () const
 vector of references to Conversion's More...
 
reco::ConversionRefVector conversionsOneLeg () const
 vector of references to one leg Conversion's More...
 
int conversionTrackProvenance (const edm::RefToBase< reco::Track > &convTrack) const
 
float e1x5 () const
 Shower shape variables. More...
 
float e2x5 () const
 
float e3x3 () const
 
float e5x5 () const
 
float ecalRecHitSumEtConeDR03 () const
 Isolation variables in cone dR=0.3. More...
 
float ecalRecHitSumEtConeDR04 () const
 
reco::ElectronSeedRefVector electronPixelSeeds () const
 reference to electron Pixel seed More...
 
const EnergyCorrectionsenergyCorrections () const
 
float etOutsideMustache () const
 
P4type getCandidateP4type () const
 
float getCorrectedEnergy (P4type type) const
 
float getCorrectedEnergyError (P4type type) const
 
float hadronicDepth1OverEm () const
 the hadronic release in depth1 over electromagnetic fraction More...
 
float hadronicDepth2OverEm () const
 the hadronic release in depth2 over electromagnetic fraction More...
 
float hadronicOverEm () const
 the total hadronic over electromagnetic fraction More...
 
float hadTowDepth1OverEm () const
 the ration of hadronic energy in towers depth1 behind the BCs in the SC and the SC energy More...
 
float hadTowDepth2OverEm () const
 the ration of hadronic energy in towers depth2 behind the BCs in the SC and the SC energy More...
 
float hadTowOverEm () const
 the ration of hadronic energy in towers behind the BCs in the SC and the SC energy More...
 
bool hasConversionTracks () const
 Bool flagging photons with a vector of refereces to conversions with size >0. More...
 
bool hasPixelSeed () const
 Bool flagging photons having a non-zero size vector of Ref to electornPixel seeds. More...
 
float hcalDepth1TowerSumEtBcConeDR03 () const
 Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalDepth1TowerSumEtBcConeDR04 () const
 Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalDepth1TowerSumEtConeDR03 () const
 Hcal-Depth1 isolation sum. More...
 
float hcalDepth1TowerSumEtConeDR04 () const
 Hcal-Depth1 isolation sum. More...
 
float hcalDepth2TowerSumEtBcConeDR03 () const
 Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalDepth2TowerSumEtBcConeDR04 () const
 Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalDepth2TowerSumEtConeDR03 () const
 Hcal-Depth2 isolation sum. More...
 
float hcalDepth2TowerSumEtConeDR04 () const
 Hcal-Depth2 isolation sum. More...
 
const std::vector
< CaloTowerDetId > & 
hcalTowersBehindClusters () const
 
float hcalTowerSumEtBcConeDR03 () const
 Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalTowerSumEtBcConeDR04 () const
 Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC. More...
 
float hcalTowerSumEtConeDR03 () const
 Hcal isolation sum. More...
 
float hcalTowerSumEtConeDR04 () const
 Hcal isolation sum. More...
 
bool isEB () const
 
bool isEBEEGap () const
 true if photon is in boundary between EB and EE More...
 
bool isEBEtaGap () const
 
bool isEBGap () const
 true if photon is in EB, and inside the boundaries in super crystals/modules More...
 
bool isEBPhiGap () const
 
bool isEE () const
 
bool isEEDeeGap () const
 
bool isEEGap () const
 true if photon is in EE, and inside the boundaries in supercrystal/D More...
 
bool isEERingGap () const
 
bool isPFlowPhoton () const
 Retrieve photonCore attributes. More...
 
bool isPhoton () const
 Implement Candidate method for particle species. More...
 
bool isStandardPhoton () const
 
float maxEnergyXtal () const
 
float mipChi2 () const
 MIP variables. More...
 
float mipIntercept () const
 
bool mipIsHalo () const
 
int mipNhitCone () const
 
float mipSlope () const
 
float mipTotEnergy () const
 
int nClusterOutsideMustache () const
 
float neutralHadronIso () const
 
int nTrkHollowConeDR03 () const
 
int nTrkHollowConeDR04 () const
 
int nTrkSolidConeDR03 () const
 
int nTrkSolidConeDR04 () const
 
const LorentzVectorp4 (P4type type) const
 
reco::SuperClusterRef parentSuperCluster () const
 Ref to PFlow SuperCluster. More...
 
float pfMVA () const
 
 Photon ()
 default constructor More...
 
 Photon (const Photon &)
 copy constructor More...
 
 Photon (const LorentzVector &p4, const Point &caloPos, const PhotonCoreRef &core, const Point &vtx=Point(0, 0, 0))
 constructor from values More...
 
reco::PhotonCoreRef photonCore () const
 returns a reference to the core photon object More...
 
float photonIso () const
 
float r1x5 () const
 
float r2x5 () const
 
float r9 () const
 
void setCandidateP4type (const P4type type)
 
void setCorrectedEnergy (P4type type, float E, float dE, bool toCand=true)
 
void setEnergyCorrections (const EnergyCorrections &e)
 
void setFiducialVolumeFlags (const FiducialFlags &a)
 set flags for photons in the ECAL fiducial volume More...
 
void setIsolationVariables (const IsolationVariables &isolInDr04, const IsolationVariables &isolInDr03)
 set relevant isolation variables More...
 
void setMIPVariables (const MIPVariables &mipVar)
 set mip Variables More...
 
void setP4 (P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
 
void setPflowIDVariables (const PflowIDVariables &pfid)
 
void setPflowIsolationVariables (const PflowIsolationVariables &pfisol)
 Set Particle Flow Isolation variables. More...
 
void setPhotonCore (const reco::PhotonCoreRef &photonCore)
 
void setShowerShapeVariables (const ShowerShape &a)
 
void setVertex (const Point &vertex)
 set primary event vertex used to define photon direction More...
 
float sigmaEtaEta () const
 
float sigmaIetaIeta () const
 
float sumChargedParticlePt () const
 
float sumNeutralHadronEtHighThreshold () const
 
float sumPhotonEtHighThreshold () const
 
float sumPUPt () const
 
reco::SuperClusterRef superCluster () const
 Ref to SuperCluster. More...
 
float trkSumPtHollowConeDR03 () const
 
float trkSumPtHollowConeDR04 () const
 
float trkSumPtSolidConeDR03 () const
 
float trkSumPtSolidConeDR04 () const
 
virtual ~Photon ()
 destructor More...
 
- Public Member Functions inherited from reco::RecoCandidate
virtual const TrackbestTrack () const
 best track pointer More...
 
virtual TrackBaseRef bestTrackRef () const
 best track RefToBase More...
 
virtual TrackType bestTrackType () const
 track type More...
 
virtual CaloTowerRef caloTower () const
 reference to a CaloTower More...
 
virtual reco::TrackRef combinedMuon () const
 reference to a stand-alone muon Track More...
 
virtual reco::GsfTrackRef gsfTrack () const
 reference to a GsfTrack More...
 
virtual size_t numberOfTracks () const
 number of multiple Tracks More...
 
 RecoCandidate ()
 default constructor More...
 
template<typename P4 >
 RecoCandidate (Charge q, const P4 &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0)
 constructor from values More...
 
virtual reco::TrackRef standAloneMuon () const
 reference to a stand-alone muon Track More...
 
virtual reco::TrackRef track () const
 reference to a Track More...
 
virtual reco::TrackRef track (size_t) const
 reference to one of multiple Tracks More...
 
virtual ~RecoCandidate ()
 destructor More...
 
- Public Member Functions inherited from reco::LeafCandidate
virtual const_iterator begin () const
 first daughter const_iterator More...
 
virtual iterator begin ()
 first daughter iterator More...
 
template<typename S >
daughter_iterator< S >::type beginFilter (const S &s) const
 
virtual Vector boostToCM () const GCC11_FINAL
 
virtual int charge () const GCC11_FINAL
 electric charge More...
 
virtual const Candidatedaughter (size_type) const
 return daughter at a given position (throws an exception) More...
 
virtual Candidatedaughter (size_type)
 return daughter at a given position (throws an exception) More...
 
virtual Candidatedaughter (const std::string &s)
 return daughter with a specified role name More...
 
virtual const Candidatedaughter (const std::string &s) const
 return daughter with a specified role name More...
 
virtual const_iterator end () const
 last daughter const_iterator More...
 
virtual iterator end ()
 last daughter iterator More...
 
template<typename S >
daughter_iterator< S >::type endFilter (const S &s) const
 
virtual double energy () const GCC11_FINAL
 energy More...
 
virtual double et () const GCC11_FINAL
 transverse energy More...
 
virtual float eta () const GCC11_FINAL
 momentum pseudorapidity More...
 
virtual void fillVertexCovariance (CovarianceMatrix &v) const
 fill SMatrix More...
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
virtual bool hasMasterClone () const
 
virtual bool hasMasterClonePtr () const
 
virtual bool isCaloMuon () const
 
virtual bool isConvertedPhoton () const
 
virtual bool isElectron () const
 
virtual bool isGlobalMuon () const
 
virtual bool isJet () const
 
virtual bool isMuon () const
 
virtual bool isStandAloneMuon () const
 
virtual bool isTrackerMuon () const
 
 LeafCandidate ()
 default constructor More...
 
 LeafCandidate (const Candidate &c)
 
template<typename P4 >
 LeafCandidate (Charge q, const P4 &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from Any values More...
 
 LeafCandidate (Charge q, const PtEtaPhiMass &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const LorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const PolarLorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const GlobalVector &p3, float iEnergy, bool massless, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
 LeafCandidate (Charge q, const GlobalVector &p3, float iEnergy, float imass, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
 constructor from values More...
 
virtual bool longLived () const GCC11_FINAL
 is long lived? More...
 
virtual float mass () const GCC11_FINAL
 mass More...
 
virtual bool massConstraint () const GCC11_FINAL
 do mass constraint? More...
 
virtual float massSqr () const GCC11_FINAL
 mass squared More...
 
virtual const CandidateBaseRefmasterClone () const
 
virtual const CandidatePtrmasterClonePtr () const
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
virtual Vector momentum () const GCC11_FINAL
 spatial momentum vector More...
 
virtual const Candidatemother (size_type) const
 return mother at a given position (throws an exception) More...
 
virtual double mt () const GCC11_FINAL
 transverse mass More...
 
virtual double mtSqr () const GCC11_FINAL
 transverse mass squared More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
virtual size_t numberOfDaughters () const
 number of daughters More...
 
virtual size_t numberOfMothers () const
 number of mothers More...
 
virtual size_t numberOfSourceCandidatePtrs () const
 
virtual double p () const GCC11_FINAL
 magnitude of momentum vector More...
 
virtual const LorentzVectorp4 () const GCC11_FINAL
 four-momentum Lorentz vector More...
 
virtual int pdgId () const GCC11_FINAL
 PDG identifier. More...
 
virtual float phi () const GCC11_FINAL
 momentum azimuthal angle More...
 
virtual const PolarLorentzVectorpolarP4 () const GCC11_FINAL
 four-momentum Lorentz vector More...
 
virtual float pt () const GCC11_FINAL
 transverse momentum More...
 
virtual double px () const GCC11_FINAL
 x coordinate of momentum vector More...
 
virtual double py () const GCC11_FINAL
 y coordinate of momentum vector More...
 
virtual double pz () const GCC11_FINAL
 z coordinate of momentum vector More...
 
virtual double rapidity () const GCC11_FINAL
 rapidity More...
 
virtual void setCharge (Charge q) GCC11_FINAL
 set electric charge More...
 
virtual void setLongLived () GCC11_FINAL
 set long lived flag More...
 
virtual void setMass (double m) GCC11_FINAL
 set particle mass More...
 
virtual void setMassConstraint () GCC11_FINAL
 set mass constraint flag More...
 
virtual void setP4 (const LorentzVector &p4) GCC11_FINAL
 set 4-momentum More...
 
virtual void setP4 (const PolarLorentzVector &p4) GCC11_FINAL
 set 4-momentum More...
 
virtual void setPdgId (int pdgId) GCC11_FINAL
 
virtual void setPz (double pz) GCC11_FINAL
 
virtual void setStatus (int status) GCC11_FINAL
 set status word More...
 
virtual void setThreeCharge (Charge qx3) GCC11_FINAL
 set electric charge More...
 
virtual CandidatePtr sourceCandidatePtr (size_type i) const
 
virtual int status () const GCC11_FINAL
 status word More...
 
virtual double theta () const GCC11_FINAL
 momentum polar angle More...
 
virtual int threeCharge () const GCC11_FINAL
 electric charge More...
 
virtual const Pointvertex () const
 vertex position (overwritten by PF...) More...
 
virtual double vertexChi2 () const
 chi-squares More...
 
virtual double vertexCovariance (int i, int j) const
 (i, j)-th element of error matrix, i, j = 0, ... 2 More...
 
CovarianceMatrix vertexCovariance () const GCC11_FINAL
 return SMatrix More...
 
virtual double vertexNdof () const
 
virtual double vertexNormalizedChi2 () const
 chi-squared divided by n.d.o.f. More...
 
virtual double vx () const
 x coordinate of vertex position More...
 
virtual double vy () const
 y coordinate of vertex position More...
 
virtual double vz () const
 z coordinate of vertex position More...
 
virtual double y () const GCC11_FINAL
 rapidity More...
 
virtual ~LeafCandidate ()
 destructor More...
 
- Public Member Functions inherited from reco::Candidate
template<typename S >
daughter_iterator< S >::type beginFilter (const S &s) const
 
 Candidate ()
 default constructor More...
 
template<typename S >
daughter_iterator< S >::type endFilter (const S &s) const
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
virtual void setSourceCandidatePtr (const CandidatePtr &ptr)
 Set the ptr to the source Candidate. More...
 
virtual ~Candidate ()
 destructor More...
 

Private Member Functions

virtual bool overlap (const Candidate &) const
 check overlap with another candidate More...
 

Private Attributes

math::XYZPointF caloPosition_
 position of seed BasicCluster for shower depth of unconverted photon More...
 
EnergyCorrections eCorrections_
 
FiducialFlags fiducialFlagBlock_
 
IsolationVariables isolationR03_
 
IsolationVariables isolationR04_
 
MIPVariables mipVariableBlock_
 
PflowIDVariables pfID_
 
PflowIsolationVariables pfIsolation_
 
reco::PhotonCoreRef photonCore_
 reference to the PhotonCore More...
 
bool pixelSeed_
 
ShowerShape showerShapeBlock_
 

Additional Inherited Members

- Static Public Member Functions inherited from reco::LeafCandidate
static double dmass (GlobalVector v, double e)
 
static double magd (GlobalVector v)
 
- Static Public Attributes inherited from reco::LeafCandidate
static const unsigned int longLivedTag = 65536
 long lived flag More...
 
static const unsigned int massConstraintTag = 131072
 do mass constraint flag More...
 
- Protected Member Functions inherited from reco::RecoCandidate
template<typename R >
bool checkOverlap (const R &r1, const R &r2) const
 check if two components overlap More...
 
- Protected Member Functions inherited from reco::LeafCandidate
void cacheCartesian () const
 set internal cache More...
 
void cachePolar () const
 set internal cache More...
 
void clearCache () const
 clear internal cache More...
 
- Protected Attributes inherited from reco::LeafCandidate
bool cacheCartesianFixed_
 
bool cachePolarFixed_
 has cache been set? More...
 
float eta_
 
float mass_
 
LorentzVector p4Cartesian_
 internal cache for p4 More...
 
PolarLorentzVector p4Polar_
 internal cache for p4 More...
 
int pdgId_
 PDG identifier. More...
 
float phi_
 
float pt_
 four-momentum Lorentz vector More...
 
Charge qx3_
 electric charge More...
 
int status_
 status word More...
 
Point vertex_
 vertex position More...
 

Detailed Description

Author
N. Marinelli Univ. of Notre Dame Photon object built out of PhotonCore stores isolation, shower shape and additional info needed for identification

Definition at line 22 of file Photon.h.

Member Enumeration Documentation

Enumerator
egamma 
pflow 
both 

Definition at line 64 of file Photon.h.

Enumerator
undefined 
ecal_standard 
ecal_photons 
regression1 
regression2 

Definition at line 198 of file Photon.h.

Constructor & Destructor Documentation

reco::Photon::Photon ( )
inline

default constructor

Definition at line 31 of file Photon.h.

References pixelSeed_.

Referenced by clone().

31 : RecoCandidate() { pixelSeed_=false; }
bool pixelSeed_
Definition: Photon.h:464
RecoCandidate()
default constructor
Definition: RecoCandidate.h:23
Photon::Photon ( const Photon rhs)

copy constructor

Definition at line 17 of file Photon.cc.

17  :
18  RecoCandidate(rhs),
20  photonCore_ ( rhs.photonCore_),
21  pixelSeed_ ( rhs.pixelSeed_ ),
29  {}
MIPVariables mipVariableBlock_
Definition: Photon.h:471
PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
IsolationVariables isolationR03_
Definition: Photon.h:468
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
Definition: Photon.h:460
IsolationVariables isolationR04_
Definition: Photon.h:467
EnergyCorrections eCorrections_
Definition: Photon.h:470
FiducialFlags fiducialFlagBlock_
Definition: Photon.h:466
bool pixelSeed_
Definition: Photon.h:464
RecoCandidate()
default constructor
Definition: RecoCandidate.h:23
ShowerShape showerShapeBlock_
Definition: Photon.h:469
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:462
Photon::Photon ( const LorentzVector p4,
const Point caloPos,
const PhotonCoreRef core,
const Point vtx = Point( 0, 0, 0 ) 
)

constructor from values

Definition at line 6 of file Photon.cc.

9  :
10  RecoCandidate( 0, p4, vtx, 22 ),
11  caloPosition_( caloPos ),
12  photonCore_(core),
13  pixelSeed_(false)
14  {}
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
Definition: Photon.h:460
bool pixelSeed_
Definition: Photon.h:464
RecoCandidate()
default constructor
Definition: RecoCandidate.h:23
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:462
Photon::~Photon ( )
virtual

destructor

Reimplemented in pat::Photon.

Definition at line 34 of file Photon.cc.

34 { }

Member Function Documentation

math::XYZPointF reco::Photon::caloPosition ( ) const
inline

position in ECAL: this is th SC position if r9<0.93. If r8>0.93 is position of seed BasicCluster taking shower depth for unconverted photon

Definition at line 80 of file Photon.h.

References caloPosition_.

Referenced by FWPhotonDetailView::addSceneInfo(), FWPhotonDetailView::build(), and setVertex().

80 {return caloPosition_;}
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
Definition: Photon.h:460
float reco::Photon::chargedHadronIso ( ) const
inline

Accessors for Particle Flow Isolation variables.

Definition at line 420 of file Photon.h.

References reco::Photon::PflowIsolationVariables::chargedHadronIso, and pfIsolation_.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float reco::Photon::chargedHadronIsoWrongVtx ( ) const
inline

Definition at line 421 of file Photon.h.

References reco::Photon::PflowIsolationVariables::chargedHadronIsoWrongVtx, and pfIsolation_.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
Photon * Photon::clone ( void  ) const
virtual

returns a clone of the candidate

Reimplemented from reco::RecoCandidate.

Reimplemented in pat::Photon.

Definition at line 36 of file Photon.cc.

References Photon().

36  {
37  return new Photon( * this );
38 }
Photon()
default constructor
Definition: Photon.h:31
reco::ConversionRefVector reco::Photon::conversions ( ) const
inline

vector of references to Conversion's

Definition at line 63 of file Photon.h.

References photonCore().

Referenced by PhotonValidator::analyze(), hasConversionTracks(), and ReducedEGProducer::produce().

63 {return this->photonCore()->conversions() ;}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
reco::ConversionRefVector reco::Photon::conversionsOneLeg ( ) const
inline

vector of references to one leg Conversion's

Definition at line 69 of file Photon.h.

References photonCore().

Referenced by hasConversionTracks(), and ReducedEGProducer::produce().

69 {return this->photonCore()->conversionsOneLeg() ;}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
int Photon::conversionTrackProvenance ( const edm::RefToBase< reco::Track > &  convTrack) const

Definition at line 62 of file Photon.cc.

References both, egamma, pflow, photonCore(), and edm::RefVector< C, T, F >::size().

62  {
63 
64  const reco::ConversionRefVector & conv2leg = this->photonCore()->conversions();
65  const reco::ConversionRefVector & conv1leg = this->photonCore()->conversionsOneLeg();
66 
67  int origin = -1;
68  bool isEg=false, isPf=false;
69 
70  for (unsigned iConv=0; iConv<conv2leg.size(); iConv++){
71  std::vector<edm::RefToBase<reco::Track> > convtracks = conv2leg[iConv]->tracks();
72  for (unsigned itk=0; itk<convtracks.size(); itk++){
73  if (convTrack==convtracks[itk]) isEg=true;
74  }
75  }
76 
77  for (unsigned iConv=0; iConv<conv1leg.size(); iConv++){
78  std::vector<edm::RefToBase<reco::Track> > convtracks = conv1leg[iConv]->tracks();
79  for (unsigned itk=0; itk<convtracks.size(); itk++){
80  if (convTrack==convtracks[itk]) isPf=true;
81  }
82  }
83 
84  if (isEg) origin=egamma;
85  if (isPf) origin=pflow;
86  if (isEg && isPf) origin=both;
87 
88  return origin;
89 }
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
size_type size() const
Size of the RefVector.
Definition: RefVector.h:89
float reco::Photon::e1x5 ( ) const
inline

Shower shape variables.

Definition at line 184 of file Photon.h.

References reco::Photon::ShowerShape::e1x5, and showerShapeBlock_.

Referenced by egHLT::OffHelper::fillClusShapeData().

184 {return showerShapeBlock_.e1x5;}
ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::e2x5 ( ) const
inline

Definition at line 185 of file Photon.h.

References reco::Photon::ShowerShape::e2x5, and showerShapeBlock_.

Referenced by egHLT::OffHelper::fillClusShapeData().

185 {return showerShapeBlock_.e2x5;}
ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::e3x3 ( ) const
inline

Definition at line 186 of file Photon.h.

References reco::Photon::ShowerShape::e3x3, and showerShapeBlock_.

186 {return showerShapeBlock_.e3x3;}
ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::e5x5 ( ) const
inline
float reco::Photon::ecalRecHitSumEtConeDR03 ( ) const
inline
float reco::Photon::ecalRecHitSumEtConeDR04 ( ) const
inline
reco::ElectronSeedRefVector reco::Photon::electronPixelSeeds ( ) const
inline

reference to electron Pixel seed

Definition at line 73 of file Photon.h.

References photonCore().

Referenced by hasPixelSeed().

73 {return this->photonCore()->electronPixelSeeds();}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
const EnergyCorrections& reco::Photon::energyCorrections ( ) const
inline

Definition at line 244 of file Photon.h.

References eCorrections_.

244 { return eCorrections_ ; }
EnergyCorrections eCorrections_
Definition: Photon.h:470
float reco::Photon::etOutsideMustache ( ) const
inline

Definition at line 450 of file Photon.h.

References reco::Photon::PflowIDVariables::etOutsideMustache, and pfID_.

450 {return pfID_.etOutsideMustache;}
PflowIDVariables pfID_
Definition: Photon.h:473
P4type reco::Photon::getCandidateP4type ( ) const
inline

Definition at line 242 of file Photon.h.

References reco::Photon::EnergyCorrections::candidateP4type, and eCorrections_.

EnergyCorrections eCorrections_
Definition: Photon.h:470
float Photon::getCorrectedEnergy ( P4type  type) const

Definition at line 123 of file Photon.cc.

References ecal_photons, ecal_standard, eCorrections_, edm::hlt::Exception, reco::Photon::EnergyCorrections::phoEcalEnergy, regression1, reco::Photon::EnergyCorrections::regression1Energy, regression2, reco::Photon::EnergyCorrections::regression2Energy, and reco::Photon::EnergyCorrections::scEcalEnergy.

123  {
124  switch(type)
125  {
126  case ecal_standard:
128  break ;
129  case ecal_photons:
131  break ;
132  case regression1:
134  case regression2:
136  break ;
137  default:
138  throw cms::Exception("reco::Photon")<<"unexpected p4 type " << type << " cannot return the energy value: " ;
139  }
140  }
type
Definition: HCALResponse.h:21
EnergyCorrections eCorrections_
Definition: Photon.h:470
float Photon::getCorrectedEnergyError ( P4type  type) const

Definition at line 143 of file Photon.cc.

References ecal_photons, ecal_standard, eCorrections_, edm::hlt::Exception, reco::Photon::EnergyCorrections::phoEcalEnergyError, regression1, reco::Photon::EnergyCorrections::regression1EnergyError, regression2, reco::Photon::EnergyCorrections::regression2EnergyError, and reco::Photon::EnergyCorrections::scEcalEnergyError.

143  {
144  switch(type)
145  {
146  case ecal_standard:
148  break ;
149  case ecal_photons:
151  break ;
152  case regression1:
154  case regression2:
156  break ;
157  default:
158  throw cms::Exception("reco::Photon")<<"unexpected p4 type " << type << " cannot return the uncertainty on the energy: " ;
159  }
160  }
type
Definition: HCALResponse.h:21
EnergyCorrections eCorrections_
Definition: Photon.h:470
float reco::Photon::hadronicDepth1OverEm ( ) const
inline

the hadronic release in depth1 over electromagnetic fraction

Definition at line 171 of file Photon.h.

References reco::Photon::ShowerShape::hcalDepth1OverEcal, and showerShapeBlock_.

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::hadronicDepth2OverEm ( ) const
inline

the hadronic release in depth2 over electromagnetic fraction

Definition at line 173 of file Photon.h.

References reco::Photon::ShowerShape::hcalDepth2OverEcal, and showerShapeBlock_.

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::hadronicOverEm ( ) const
inline
float reco::Photon::hadTowDepth1OverEm ( ) const
inline

the ration of hadronic energy in towers depth1 behind the BCs in the SC and the SC energy

Definition at line 178 of file Photon.h.

References reco::Photon::ShowerShape::hcalDepth1OverEcalBc, and showerShapeBlock_.

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::hadTowDepth2OverEm ( ) const
inline

the ration of hadronic energy in towers depth2 behind the BCs in the SC and the SC energy

Definition at line 180 of file Photon.h.

References reco::Photon::ShowerShape::hcalDepth2OverEcalBc, and showerShapeBlock_.

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::hadTowOverEm ( ) const
inline

the ration of hadronic energy in towers behind the BCs in the SC and the SC energy

Definition at line 176 of file Photon.h.

References reco::Photon::ShowerShape::hcalDepth1OverEcalBc, reco::Photon::ShowerShape::hcalDepth2OverEcalBc, and showerShapeBlock_.

Referenced by EGEnergyCorrector::CorrectedEnergyWithErrorV3(), and PFEGammaFilters::passPhotonSelection().

bool reco::Photon::hasConversionTracks ( ) const
inline

Bool flagging photons with a vector of refereces to conversions with size >0.

Definition at line 71 of file Photon.h.

References conversions(), conversionsOneLeg(), photonCore(), and reco::Candidate::size.

Referenced by SimplePi0DiscAnalyzer::analyze().

71 { if (this->photonCore()->conversions().size() > 0 || this->photonCore()->conversionsOneLeg().size() > 0) return true; else return false;}
reco::ConversionRefVector conversionsOneLeg() const
vector of references to one leg Conversion&#39;s
Definition: Photon.h:69
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
reco::ConversionRefVector conversions() const
vector of references to Conversion&#39;s
Definition: Photon.h:63
bool reco::Photon::hasPixelSeed ( ) const
inline

Bool flagging photons having a non-zero size vector of Ref to electornPixel seeds.

Definition at line 75 of file Photon.h.

References electronPixelSeeds(), photonCore(), and reco::Candidate::size.

Referenced by pat::PATPhotonProducer::produce().

75 { if ((this->photonCore()->electronPixelSeeds()).size() > 0 ) return true; else return false; }
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
reco::ElectronSeedRefVector electronPixelSeeds() const
reference to electron Pixel seed
Definition: Photon.h:73
float reco::Photon::hcalDepth1TowerSumEtBcConeDR03 ( ) const
inline

Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 373 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth1TowerSumEtBc, and isolationR03_.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::hcalDepth1TowerSumEtBcConeDR04 ( ) const
inline

Hcal-Depth1 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 350 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth1TowerSumEtBc, and isolationR04_.

IsolationVariables isolationR04_
Definition: Photon.h:467
float reco::Photon::hcalDepth1TowerSumEtConeDR03 ( ) const
inline

Hcal-Depth1 isolation sum.

Definition at line 367 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth1TowerSumEt, and isolationR03_.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::hcalDepth1TowerSumEtConeDR04 ( ) const
inline

Hcal-Depth1 isolation sum.

Definition at line 344 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth1TowerSumEt, and isolationR04_.

IsolationVariables isolationR04_
Definition: Photon.h:467
float reco::Photon::hcalDepth2TowerSumEtBcConeDR03 ( ) const
inline

Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 375 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth2TowerSumEtBc, and isolationR03_.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::hcalDepth2TowerSumEtBcConeDR04 ( ) const
inline

Hcal-Depth2 isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 352 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth2TowerSumEtBc, and isolationR04_.

IsolationVariables isolationR04_
Definition: Photon.h:467
float reco::Photon::hcalDepth2TowerSumEtConeDR03 ( ) const
inline

Hcal-Depth2 isolation sum.

Definition at line 369 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth2TowerSumEt, and isolationR03_.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::hcalDepth2TowerSumEtConeDR04 ( ) const
inline

Hcal-Depth2 isolation sum.

Definition at line 346 of file Photon.h.

References reco::Photon::IsolationVariables::hcalDepth2TowerSumEt, and isolationR04_.

IsolationVariables isolationR04_
Definition: Photon.h:467
const std::vector<CaloTowerDetId>& reco::Photon::hcalTowersBehindClusters ( ) const
inline

Definition at line 181 of file Photon.h.

References reco::Photon::ShowerShape::hcalTowersBehindClusters, and showerShapeBlock_.

Referenced by PhotonIsolationCalculator::calculateHcalTowerIso().

std::vector< CaloTowerDetId > hcalTowersBehindClusters
Definition: Photon.h:151
ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::hcalTowerSumEtBcConeDR03 ( ) const
inline

Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 371 of file Photon.h.

References reco::Photon::IsolationVariables::hcalTowerSumEtBc, and isolationR03_.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::hcalTowerSumEtBcConeDR04 ( ) const
inline

Hcal isolation sum subtracting the hadronic energy in towers behind the BCs in the SC.

Definition at line 348 of file Photon.h.

References reco::Photon::IsolationVariables::hcalTowerSumEtBc, and isolationR04_.

IsolationVariables isolationR04_
Definition: Photon.h:467
float reco::Photon::hcalTowerSumEtConeDR03 ( ) const
inline
float reco::Photon::hcalTowerSumEtConeDR04 ( ) const
inline
bool reco::Photon::isEB ( ) const
inline
bool reco::Photon::isEBEEGap ( ) const
inline

true if photon is in boundary between EB and EE

Definition at line 132 of file Photon.h.

References fiducialFlagBlock_, and reco::Photon::FiducialFlags::isEBEEGap.

Referenced by PatPhotonSimpleAnalyzer::analyze(), CutBasedPhotonIDAlgo::decideEB(), CutBasedPhotonIDAlgo::decideEE(), and egHLT::OffPho::isGap().

FiducialFlags fiducialFlagBlock_
Definition: Photon.h:466
bool reco::Photon::isEBEtaGap ( ) const
inline
bool reco::Photon::isEBGap ( ) const
inline

true if photon is in EB, and inside the boundaries in super crystals/modules

Definition at line 124 of file Photon.h.

References isEBEtaGap(), and isEBPhiGap().

Referenced by PatPhotonSimpleAnalyzer::analyze(), and egHLT::OffPho::isGap().

124 { return (isEBEtaGap() || isEBPhiGap()); }
bool isEBPhiGap() const
Definition: Photon.h:126
bool isEBEtaGap() const
Definition: Photon.h:125
bool reco::Photon::isEBPhiGap ( ) const
inline
bool reco::Photon::isEE ( ) const
inline

Definition at line 122 of file Photon.h.

References fiducialFlagBlock_, and reco::Photon::FiducialFlags::isEE.

Referenced by PatPhotonSimpleAnalyzer::analyze().

122 {return fiducialFlagBlock_.isEE;}
FiducialFlags fiducialFlagBlock_
Definition: Photon.h:466
bool reco::Photon::isEEDeeGap ( ) const
inline
bool reco::Photon::isEEGap ( ) const
inline

true if photon is in EE, and inside the boundaries in supercrystal/D

Definition at line 128 of file Photon.h.

References isEEDeeGap(), and isEERingGap().

Referenced by PatPhotonSimpleAnalyzer::analyze(), and egHLT::OffPho::isGap().

128 { return (isEERingGap() || isEEDeeGap()); }
bool isEEDeeGap() const
Definition: Photon.h:130
bool isEERingGap() const
Definition: Photon.h:129
bool reco::Photon::isEERingGap ( ) const
inline
bool reco::Photon::isPFlowPhoton ( ) const
inline

Retrieve photonCore attributes.

Definition at line 56 of file Photon.h.

References photonCore().

56 {return this->photonCore()->isPFlowPhoton();}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
bool reco::Photon::isPhoton ( ) const
inlinevirtual

Implement Candidate method for particle species.

Reimplemented from reco::LeafCandidate.

Definition at line 84 of file Photon.h.

References funct::true.

84 { return true ; }
bool reco::Photon::isStandardPhoton ( ) const
inline

Definition at line 57 of file Photon.h.

References photonCore().

57 {return this->photonCore()->isStandardPhoton();}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
float reco::Photon::maxEnergyXtal ( ) const
inline

Definition at line 188 of file Photon.h.

References reco::Photon::ShowerShape::maxEnergyXtal, and showerShapeBlock_.

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::mipChi2 ( ) const
inline

MIP variables.

Definition at line 272 of file Photon.h.

References reco::Photon::MIPVariables::mipChi2, and mipVariableBlock_.

272 {return mipVariableBlock_.mipChi2;}
MIPVariables mipVariableBlock_
Definition: Photon.h:471
float reco::Photon::mipIntercept ( ) const
inline

Definition at line 275 of file Photon.h.

References reco::Photon::MIPVariables::mipIntercept, and mipVariableBlock_.

MIPVariables mipVariableBlock_
Definition: Photon.h:471
bool reco::Photon::mipIsHalo ( ) const
inline

Definition at line 277 of file Photon.h.

References reco::Photon::MIPVariables::mipIsHalo, and mipVariableBlock_.

MIPVariables mipVariableBlock_
Definition: Photon.h:471
int reco::Photon::mipNhitCone ( ) const
inline

Definition at line 276 of file Photon.h.

References reco::Photon::MIPVariables::mipNhitCone, and mipVariableBlock_.

MIPVariables mipVariableBlock_
Definition: Photon.h:471
float reco::Photon::mipSlope ( ) const
inline

Definition at line 274 of file Photon.h.

References reco::Photon::MIPVariables::mipSlope, and mipVariableBlock_.

274 {return mipVariableBlock_.mipSlope;}
MIPVariables mipVariableBlock_
Definition: Photon.h:471
float reco::Photon::mipTotEnergy ( ) const
inline

Definition at line 273 of file Photon.h.

References reco::Photon::MIPVariables::mipTotEnergy, and mipVariableBlock_.

MIPVariables mipVariableBlock_
Definition: Photon.h:471
int reco::Photon::nClusterOutsideMustache ( ) const
inline

Definition at line 449 of file Photon.h.

References reco::Photon::PflowIDVariables::nClusterOutsideMustache, and pfID_.

PflowIDVariables pfID_
Definition: Photon.h:473
float reco::Photon::neutralHadronIso ( ) const
inline

Definition at line 422 of file Photon.h.

References reco::Photon::PflowIsolationVariables::neutralHadronIso, and pfIsolation_.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
int reco::Photon::nTrkHollowConeDR03 ( ) const
inline

Definition at line 383 of file Photon.h.

References isolationR03_, and reco::Photon::IsolationVariables::nTrkHollowCone.

Referenced by egHLT::OffHelper::fillIsolData().

IsolationVariables isolationR03_
Definition: Photon.h:468
int reco::Photon::nTrkHollowConeDR04 ( ) const
inline
int reco::Photon::nTrkSolidConeDR03 ( ) const
inline

Definition at line 381 of file Photon.h.

References isolationR03_, and reco::Photon::IsolationVariables::nTrkSolidCone.

IsolationVariables isolationR03_
Definition: Photon.h:468
int reco::Photon::nTrkSolidConeDR04 ( ) const
inline
bool Photon::overlap ( const Candidate c) const
privatevirtual

check overlap with another candidate

Implements reco::RecoCandidate.

Definition at line 41 of file Photon.cc.

References trackerHits::c, reco::RecoCandidate::checkOverlap(), python.connectstrParser::o, reco::RecoCandidate::superCluster(), and superCluster().

41  {
42  const RecoCandidate * o = dynamic_cast<const RecoCandidate *>( & c );
43  return ( o != 0 &&
45  );
46  return false;
47 }
bool checkOverlap(const R &r1, const R &r2) const
check if two components overlap
Definition: RecoCandidate.h:63
reco::SuperClusterRef superCluster() const
Ref to SuperCluster.
Definition: Photon.cc:58
virtual reco::SuperClusterRef superCluster() const
reference to a SuperCluster
const Candidate::LorentzVector & Photon::p4 ( P4type  type) const

Definition at line 196 of file Photon.cc.

References ecal_photons, ecal_standard, eCorrections_, edm::hlt::Exception, reco::Photon::EnergyCorrections::phoEcalP4, regression1, reco::Photon::EnergyCorrections::regression1P4, regression2, reco::Photon::EnergyCorrections::regression2P4, and reco::Photon::EnergyCorrections::scEcalP4.

Referenced by egHLT::OffPho::p4().

197  {
198  switch(type)
199  {
200  case ecal_standard: return eCorrections_.scEcalP4 ;
201  case ecal_photons: return eCorrections_.phoEcalP4 ;
204  default: throw cms::Exception("reco::Photon")<<"unexpected p4 type: "<< type << " cannot return p4 ";
205  }
206  }
type
Definition: HCALResponse.h:21
LorentzVector regression2P4
Definition: Photon.h:212
EnergyCorrections eCorrections_
Definition: Photon.h:470
LorentzVector regression1P4
Definition: Photon.h:209
reco::SuperClusterRef reco::Photon::parentSuperCluster ( ) const
inline

Ref to PFlow SuperCluster.

Definition at line 61 of file Photon.h.

References photonCore().

61 {return this->photonCore()->parentSuperCluster();}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
float reco::Photon::pfMVA ( ) const
inline

Definition at line 451 of file Photon.h.

References reco::Photon::PflowIDVariables::mva, and pfID_.

451 {return pfID_.mva;}
PflowIDVariables pfID_
Definition: Photon.h:473
reco::PhotonCoreRef reco::Photon::photonCore ( ) const
inline

returns a reference to the core photon object

Definition at line 49 of file Photon.h.

References photonCore_.

Referenced by conversions(), conversionsOneLeg(), conversionTrackProvenance(), electronPixelSeeds(), hasConversionTracks(), hasPixelSeed(), isPFlowPhoton(), isStandardPhoton(), parentSuperCluster(), ReducedEGProducer::produce(), setPhotonCore(), and superCluster().

49 { return photonCore_;}
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:462
float reco::Photon::photonIso ( ) const
inline

Definition at line 423 of file Photon.h.

References pfIsolation_, and reco::Photon::PflowIsolationVariables::photonIso.

423 {return pfIsolation_.photonIso;}
PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float reco::Photon::r1x5 ( ) const
inline
float reco::Photon::r2x5 ( ) const
inline
float reco::Photon::r9 ( ) const
inline
void reco::Photon::setCandidateP4type ( const P4type  type)
inline

Definition at line 238 of file Photon.h.

References reco::Photon::EnergyCorrections::candidateP4type, and eCorrections_.

type
Definition: HCALResponse.h:21
EnergyCorrections eCorrections_
Definition: Photon.h:470
void Photon::setCorrectedEnergy ( P4type  type,
float  E,
float  dE,
bool  toCand = true 
)

Definition at line 92 of file Photon.cc.

References ecal_photons, ecal_standard, eCorrections_, edm::hlt::Exception, reco::LeafCandidate::p4(), reco::Photon::EnergyCorrections::phoEcalEnergy, reco::Photon::EnergyCorrections::phoEcalEnergyError, regression1, reco::Photon::EnergyCorrections::regression1Energy, reco::Photon::EnergyCorrections::regression1EnergyError, regression2, reco::Photon::EnergyCorrections::regression2Energy, reco::Photon::EnergyCorrections::regression2EnergyError, reco::Photon::EnergyCorrections::scEcalEnergy, reco::Photon::EnergyCorrections::scEcalEnergyError, and setP4().

Referenced by PhotonEnergyCorrector::calculate().

92  {
93 
94  math::XYZTLorentzVectorD newP4 = p4() ;
95  newP4 *= newEnergy/newP4.e() ;
96  switch(type)
97  {
98  case ecal_standard:
99  eCorrections_.scEcalEnergy = newEnergy;
101  break ;
102  case ecal_photons:
103  eCorrections_.phoEcalEnergy = newEnergy;
105  break ;
106  case regression1:
107  eCorrections_.regression1Energy = newEnergy ;
109  case regression2:
110  eCorrections_.regression2Energy = newEnergy ;
112  break ;
113  default:
114  throw cms::Exception("reco::Photon")<<"unexpected p4 type: "<< type ;
115  }
116  setP4(type, newP4, delta_e, setToRecoCandidate);
117 
118 }
type
Definition: HCALResponse.h:21
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:14
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
EnergyCorrections eCorrections_
Definition: Photon.h:470
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
Definition: Photon.cc:164
void reco::Photon::setEnergyCorrections ( const EnergyCorrections e)
inline

Definition at line 237 of file Photon.h.

References alignCSCRings::e, and eCorrections_.

237 { eCorrections_=e;}
EnergyCorrections eCorrections_
Definition: Photon.h:470
void reco::Photon::setFiducialVolumeFlags ( const FiducialFlags a)
inline

set flags for photons in the ECAL fiducial volume

Definition at line 117 of file Photon.h.

References a, and fiducialFlagBlock_.

117 { fiducialFlagBlock_= a ;}
FiducialFlags fiducialFlagBlock_
Definition: Photon.h:466
double a
Definition: hdecay.h:121
void reco::Photon::setIsolationVariables ( const IsolationVariables isolInDr04,
const IsolationVariables isolInDr03 
)
inline

set relevant isolation variables

Definition at line 336 of file Photon.h.

References isolationR03_, and isolationR04_.

336 { isolationR04_ = isolInDr04 ; isolationR03_ = isolInDr03 ;}
IsolationVariables isolationR03_
Definition: Photon.h:468
IsolationVariables isolationR04_
Definition: Photon.h:467
void reco::Photon::setMIPVariables ( const MIPVariables mipVar)
inline

set mip Variables

Definition at line 280 of file Photon.h.

References mipVariableBlock_.

280 {mipVariableBlock_= mipVar;}
MIPVariables mipVariableBlock_
Definition: Photon.h:471
void Photon::setP4 ( P4type  type,
const LorentzVector p4,
float  p4Error,
bool  setToRecoCandidate 
)

Definition at line 164 of file Photon.cc.

References reco::Photon::EnergyCorrections::candidateP4type, ecal_photons, ecal_standard, eCorrections_, relativeConstraints::error, edm::hlt::Exception, reco::LeafCandidate::p4(), reco::Photon::EnergyCorrections::phoEcalEnergyError, reco::Photon::EnergyCorrections::phoEcalP4, regression1, reco::Photon::EnergyCorrections::regression1EnergyError, reco::Photon::EnergyCorrections::regression1P4, regression2, reco::Photon::EnergyCorrections::regression2EnergyError, reco::Photon::EnergyCorrections::regression2P4, reco::Photon::EnergyCorrections::scEcalEnergyError, and reco::Photon::EnergyCorrections::scEcalP4.

Referenced by setCorrectedEnergy(), and setVertex().

164  {
165 
166 
167  switch(type)
168  {
169  case ecal_standard:
172  break ;
173  case ecal_photons:
176  break ;
177  case regression1:
180  case regression2:
183  break ;
184  default:
185  throw cms::Exception("reco::Photon")<<"unexpected p4 type: "<< type ;
186  }
187  if (setToRecoCandidate)
188  {
189  setP4(p4) ;
191  }
192 
193 
194 }
type
Definition: HCALResponse.h:21
virtual const LorentzVector & p4() const GCC11_FINAL
four-momentum Lorentz vector
LorentzVector regression2P4
Definition: Photon.h:212
EnergyCorrections eCorrections_
Definition: Photon.h:470
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
Definition: Photon.cc:164
LorentzVector regression1P4
Definition: Photon.h:209
void reco::Photon::setPflowIDVariables ( const PflowIDVariables pfid)
inline

Definition at line 453 of file Photon.h.

References pfID_.

Referenced by GEDPhotonProducer::fillPhotonCollection().

453 { pfID_ = pfid;}
PflowIDVariables pfID_
Definition: Photon.h:473
void reco::Photon::setPflowIsolationVariables ( const PflowIsolationVariables pfisol)
inline

Set Particle Flow Isolation variables.

Definition at line 430 of file Photon.h.

References pfIsolation_.

Referenced by GEDPhotonProducer::fillPhotonCollection().

430 { pfIsolation_ = pfisol;}
PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
void reco::Photon::setPhotonCore ( const reco::PhotonCoreRef photonCore)
inline

Definition at line 50 of file Photon.h.

References photonCore(), and photonCore_.

reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:462
void reco::Photon::setShowerShapeVariables ( const ShowerShape a)
inline

Definition at line 167 of file Photon.h.

References a, and showerShapeBlock_.

167 { showerShapeBlock_ = a ;}
double a
Definition: hdecay.h:121
ShowerShape showerShapeBlock_
Definition: Photon.h:469
void Photon::setVertex ( const Point vertex)
virtual

set primary event vertex used to define photon direction

Reimplemented from reco::LeafCandidate.

Definition at line 49 of file Photon.cc.

References caloPosition(), reco::LeafCandidate::energy(), reco::LeafCandidate::momentum(), setP4(), reco::LeafCandidate::vertex(), and reco::LeafCandidate::vertex_.

49  {
50  math::XYZVectorF direction = caloPosition() - vertex;
51  double energy = this->energy();
52  math::XYZVectorF momentum = direction.unit() * energy;
53  math::XYZTLorentzVector lv(momentum.x(), momentum.y(), momentum.z(), energy );
54  setP4(lv);
55  vertex_ = vertex;
56 }
virtual double energy() const GCC11_FINAL
energy
virtual const Point & vertex() const
vertex position (overwritten by PF...)
Point vertex_
vertex position
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float > > XYZVectorF
spatial vector with cartesian internal representation
Definition: Vector3D.h:17
math::XYZPointF caloPosition() const
position in ECAL: this is th SC position if r9&lt;0.93. If r8&gt;0.93 is position of seed BasicCluster taki...
Definition: Photon.h:80
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
Definition: Photon.cc:164
virtual Vector momentum() const GCC11_FINAL
spatial momentum vector
float reco::Photon::sigmaEtaEta ( ) const
inline

Definition at line 189 of file Photon.h.

References showerShapeBlock_, and reco::Photon::ShowerShape::sigmaEtaEta.

Referenced by egHLT::OffHelper::fillClusShapeData().

ShowerShape showerShapeBlock_
Definition: Photon.h:469
float reco::Photon::sigmaIetaIeta ( ) const
inline
float reco::Photon::sumChargedParticlePt ( ) const
inline

Definition at line 424 of file Photon.h.

References pfIsolation_, and reco::Photon::PflowIsolationVariables::sumChargedParticlePt.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float sumChargedParticlePt
sum-pt of charged Particles(inludes e/mu)
Definition: Photon.h:398
float reco::Photon::sumNeutralHadronEtHighThreshold ( ) const
inline

Definition at line 425 of file Photon.h.

References pfIsolation_, and reco::Photon::PflowIsolationVariables::sumNeutralHadronEtHighThreshold.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float sumNeutralHadronEtHighThreshold
sum pt of neutral hadrons with a higher threshold
Definition: Photon.h:399
float reco::Photon::sumPhotonEtHighThreshold ( ) const
inline

Definition at line 426 of file Photon.h.

References pfIsolation_, and reco::Photon::PflowIsolationVariables::sumPhotonEtHighThreshold.

PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float sumPhotonEtHighThreshold
sum pt of PF photons with a higher threshold
Definition: Photon.h:400
float reco::Photon::sumPUPt ( ) const
inline

Definition at line 427 of file Photon.h.

References pfIsolation_, and reco::Photon::PflowIsolationVariables::sumPUPt.

427 {return pfIsolation_.sumPUPt;}
PflowIsolationVariables pfIsolation_
Definition: Photon.h:472
float sumPUPt
sum pt of charged Particles not from PV (for Pu corrections)
Definition: Photon.h:401
reco::SuperClusterRef Photon::superCluster ( ) const
virtual

Ref to SuperCluster.

Reimplemented from reco::RecoCandidate.

Reimplemented in pat::Photon.

Definition at line 58 of file Photon.cc.

References photonCore().

Referenced by FWPhotonDetailView::addSceneInfo(), SimplePhotonAnalyzer::analyze(), SimplePi0DiscAnalyzer::analyze(), TkConvValidator::analyze(), PhotonValidator::analyze(), EgammaObjects::analyzePhotons(), FWPhotonDetailView::build(), FWPhotonProxyBuilder::buildViewType(), PhotonIsolationCalculator::calculate(), PhotonEnergyCorrector::calculate(), PhotonIsolationCalculator::classify(), helper::PhotonCollectionStoreManager::cloneAndStore(), EGEnergyCorrector::CorrectedEnergyWithError(), EGEnergyCorrector::CorrectedEnergyWithErrorV3(), PFCandWithSuperClusterExtractor::depositFromObject(), pat::Photon::embedBasicClusters(), pat::Photon::embedPreshowerClusters(), pat::Photon::embedSeedCluster(), pat::Photon::embedSuperCluster(), egHLT::OffPho::etaSC(), egHLT::OffPho::etSC(), PFIsolationEstimator::fGetIsolationInRings(), PFPhotonIsolationCalculator::fGetIsolationInRings(), egHLT::OffHelper::fillClusShapeData(), EgammaObjects::findRecoMass(), PhotonMIPHaloTagger::GetMipTrailFit(), PhotonMIPHaloTagger::GetSeedHighestE(), PFPhotonIsolationCalculator::matchPFObject(), PFIsolationEstimator::matchPFObject(), PhotonEqual::operator()(), overlap(), egHLT::OffPho::phiSC(), ReducedEGProducer::produce(), pat::PATPhotonProducer::produce(), r9(), pat::Photon::seed(), and pat::Photon::superCluster().

58  {
59  return this->photonCore()->superCluster();
60 }
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:49
float reco::Photon::trkSumPtHollowConeDR03 ( ) const
inline
float reco::Photon::trkSumPtHollowConeDR04 ( ) const
inline
float reco::Photon::trkSumPtSolidConeDR03 ( ) const
inline

Definition at line 377 of file Photon.h.

References isolationR03_, and reco::Photon::IsolationVariables::trkSumPtSolidCone.

IsolationVariables isolationR03_
Definition: Photon.h:468
float reco::Photon::trkSumPtSolidConeDR04 ( ) const
inline

Member Data Documentation

math::XYZPointF reco::Photon::caloPosition_
private

position of seed BasicCluster for shower depth of unconverted photon

Definition at line 460 of file Photon.h.

Referenced by caloPosition().

EnergyCorrections reco::Photon::eCorrections_
private
FiducialFlags reco::Photon::fiducialFlagBlock_
private
IsolationVariables reco::Photon::isolationR03_
private
IsolationVariables reco::Photon::isolationR04_
private
MIPVariables reco::Photon::mipVariableBlock_
private
PflowIDVariables reco::Photon::pfID_
private

Definition at line 473 of file Photon.h.

Referenced by etOutsideMustache(), nClusterOutsideMustache(), pfMVA(), and setPflowIDVariables().

PflowIsolationVariables reco::Photon::pfIsolation_
private
reco::PhotonCoreRef reco::Photon::photonCore_
private

reference to the PhotonCore

Definition at line 462 of file Photon.h.

Referenced by photonCore(), and setPhotonCore().

bool reco::Photon::pixelSeed_
private

Definition at line 464 of file Photon.h.

Referenced by Photon().

ShowerShape reco::Photon::showerShapeBlock_
private