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...
 
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
 
float pfMVA () const
 
reco::SuperClusterRef pfSuperCluster () const
 Ref to PFlow SuperCluster. More...
 
 Photon ()
 default constructor More...
 
 Photon (const Photon &)
 copy constructor More...
 
 Photon (const LorentzVector &p4, 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 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
 
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...
 
 RecoCandidate (Charge q, const LorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0)
 constructor from values More...
 
 RecoCandidate (Charge q, const PolarLorentzVector &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
 
virtual int charge () const
 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
 energy More...
 
virtual double et () const
 transverse energy More...
 
virtual double eta () const
 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)
 
 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...
 
virtual bool longLived () const
 is long lived? More...
 
virtual double mass () const
 mass More...
 
virtual bool massConstraint () const
 do mass constraint? More...
 
virtual double massSqr () const
 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
 spatial momentum vector More...
 
virtual const Candidatemother (size_type) const
 return mother at a given position (throws an exception) More...
 
virtual double mt () const
 transverse mass More...
 
virtual double mtSqr () const
 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
 magnitude of momentum vector More...
 
virtual const LorentzVectorp4 () const
 four-momentum Lorentz vector More...
 
virtual int pdgId () const
 PDG identifier. More...
 
virtual double phi () const
 momentum azimuthal angle More...
 
virtual const PolarLorentzVectorpolarP4 () const
 four-momentum Lorentz vector More...
 
virtual double pt () const
 transverse momentum More...
 
virtual double px () const
 x coordinate of momentum vector More...
 
virtual double py () const
 y coordinate of momentum vector More...
 
virtual double pz () const
 z coordinate of momentum vector More...
 
virtual double rapidity () const
 rapidity More...
 
virtual void setCharge (Charge q)
 set electric charge More...
 
virtual void setLongLived ()
 set long lived flag More...
 
virtual void setMass (double m)
 set particle mass More...
 
virtual void setMassConstraint ()
 set mass constraint flag More...
 
virtual void setP4 (const LorentzVector &p4)
 set 4-momentum More...
 
virtual void setP4 (const PolarLorentzVector &p4)
 set 4-momentum More...
 
virtual void setPdgId (int pdgId)
 
virtual void setPz (double pz)
 
virtual void setStatus (int status)
 set status word More...
 
virtual void setThreeCharge (Charge qx3)
 set electric charge More...
 
virtual CandidatePtr sourceCandidatePtr (size_type i) const
 
virtual int status () const
 status word More...
 
virtual double theta () const
 momentum polar angle More...
 
virtual int threeCharge () const
 electric charge More...
 
virtual const Pointvertex () const
 vertex position 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
 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
 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 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
Version
Id:
Photon.h,v 1.48 2012/03/26 16:44:27 nancy Exp

Definition at line 23 of file Photon.h.

Member Enumeration Documentation

Enumerator
egamma 
pflow 
both 

Definition at line 63 of file Photon.h.

Enumerator
undefined 
ecal_standard 
ecal_photons 
regression1 
regression2 

Definition at line 196 of file Photon.h.

Constructor & Destructor Documentation

reco::Photon::Photon ( )
inline

default constructor

Definition at line 32 of file Photon.h.

References pixelSeed_.

Referenced by clone().

32 : RecoCandidate() { pixelSeed_=false; }
bool pixelSeed_
Definition: Photon.h:448
RecoCandidate()
default constructor
Definition: RecoCandidate.h:24
Photon::Photon ( const Photon rhs)

copy constructor

Definition at line 18 of file Photon.cc.

18  :
19  RecoCandidate(rhs),
21  photonCore_ ( rhs.photonCore_),
22  pixelSeed_ ( rhs.pixelSeed_ ),
30  {}
MIPVariables mipVariableBlock_
Definition: Photon.h:455
PflowIsolationVariables pfIsolation_
Definition: Photon.h:456
IsolationVariables isolationR03_
Definition: Photon.h:452
math::XYZPointF caloPosition_
position of seed BasicCluster for shower depth of unconverted photon
Definition: Photon.h:444
IsolationVariables isolationR04_
Definition: Photon.h:451
EnergyCorrections eCorrections_
Definition: Photon.h:454
FiducialFlags fiducialFlagBlock_
Definition: Photon.h:450
bool pixelSeed_
Definition: Photon.h:448
RecoCandidate()
default constructor
Definition: RecoCandidate.h:24
ShowerShape showerShapeBlock_
Definition: Photon.h:453
reco::PhotonCoreRef photonCore_
reference to the PhotonCore
Definition: Photon.h:446
Photon::Photon ( const LorentzVector p4,
Point  caloPos,
const PhotonCoreRef core,
const Point vtx = Point( 0, 0, 0 ) 
)

constructor from values

Definition at line 7 of file Photon.cc.

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

destructor

Reimplemented in pat::Photon.

Definition at line 35 of file Photon.cc.

35 { }

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 79 of file Photon.h.

References caloPosition_.

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

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

Accessors for Particle Flow Isolation variables.

Definition at line 409 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

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

returns a clone of the candidate

Reimplemented from reco::RecoCandidate.

Reimplemented in pat::Photon.

Definition at line 37 of file Photon.cc.

References Photon().

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

vector of references to Conversion's

Definition at line 62 of file Photon.h.

References photonCore().

Referenced by PhotonValidator::analyze(), ggPFTracks::getPFConvTracks(), and hasConversionTracks().

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

vector of references to one leg Conversion's

Definition at line 68 of file Photon.h.

References photonCore().

Referenced by ggPFTracks::getPFConvTracks(), and hasConversionTracks().

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

Definition at line 63 of file Photon.cc.

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

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

Shower shape variables.

Definition at line 182 of file Photon.h.

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

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

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

Definition at line 183 of file Photon.h.

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

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

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

Definition at line 184 of file Photon.h.

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

184 {return showerShapeBlock_.e3x3;}
ShowerShape showerShapeBlock_
Definition: Photon.h:453
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 72 of file Photon.h.

References photonCore().

Referenced by hasPixelSeed().

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

Definition at line 242 of file Photon.h.

References eCorrections_.

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

Definition at line 434 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

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

Definition at line 240 of file Photon.h.

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

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

Definition at line 124 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.

Referenced by PhotonValidator::analyze().

124  {
125  switch(type)
126  {
127  case ecal_standard:
129  break ;
130  case ecal_photons:
132  break ;
133  case regression1:
135  case regression2:
137  break ;
138  default:
139  throw cms::Exception("reco::Photon")<<"unexpected p4 type " << type << " cannot return the energy value: " ;
140  }
141  }
type
Definition: HCALResponse.h:22
EnergyCorrections eCorrections_
Definition: Photon.h:454
float Photon::getCorrectedEnergyError ( P4type  type) const

Definition at line 144 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.

144  {
145  switch(type)
146  {
147  case ecal_standard:
149  break ;
150  case ecal_photons:
152  break ;
153  case regression1:
155  case regression2:
157  break ;
158  default:
159  throw cms::Exception("reco::Photon")<<"unexpected p4 type " << type << " cannot return the uncertainty on the energy: " ;
160  }
161  }
type
Definition: HCALResponse.h:22
EnergyCorrections eCorrections_
Definition: Photon.h:454
float reco::Photon::hadronicDepth1OverEm ( ) const
inline

the hadronic release in depth1 over electromagnetic fraction

Definition at line 169 of file Photon.h.

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

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

the hadronic release in depth2 over electromagnetic fraction

Definition at line 171 of file Photon.h.

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

ShowerShape showerShapeBlock_
Definition: Photon.h:453
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 176 of file Photon.h.

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

ShowerShape showerShapeBlock_
Definition: Photon.h:453
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 178 of file Photon.h.

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

ShowerShape showerShapeBlock_
Definition: Photon.h:453
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 174 of file Photon.h.

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

Referenced by PhotonValidator::analyze(), and EGEnergyCorrector::CorrectedEnergyWithErrorV3().

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

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

Definition at line 70 of file Photon.h.

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

Referenced by SimplePi0DiscAnalyzer::analyze().

70 { 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:68
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:50
reco::ConversionRefVector conversions() const
vector of references to Conversion&#39;s
Definition: Photon.h:62
bool reco::Photon::hasPixelSeed ( ) const
inline

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

Definition at line 74 of file Photon.h.

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

74 { 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:50
reco::ElectronSeedRefVector electronPixelSeeds() const
reference to electron Pixel seed
Definition: Photon.h:72
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 371 of file Photon.h.

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

IsolationVariables isolationR03_
Definition: Photon.h:452
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 348 of file Photon.h.

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

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

Hcal-Depth1 isolation sum.

Definition at line 365 of file Photon.h.

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

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

Hcal-Depth1 isolation sum.

Definition at line 342 of file Photon.h.

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

IsolationVariables isolationR04_
Definition: Photon.h:451
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 373 of file Photon.h.

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

IsolationVariables isolationR03_
Definition: Photon.h:452
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 350 of file Photon.h.

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

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

Hcal-Depth2 isolation sum.

Definition at line 367 of file Photon.h.

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

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

Hcal-Depth2 isolation sum.

Definition at line 344 of file Photon.h.

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

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

Definition at line 179 of file Photon.h.

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

Referenced by PhotonIsolationCalculator::calculateHcalTowerIso().

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

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

Definition at line 369 of file Photon.h.

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

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

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

Definition at line 346 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

IsolationVariables isolationR04_
Definition: Photon.h:451
float reco::Photon::hcalTowerSumEtConeDR03 ( ) const
inline

Hcal isolation sum.

Definition at line 363 of file Photon.h.

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

Referenced by egHLT::OffHelper::fillIsolData(), and PhotonSelectorAlgo::passPhotonSelection().

IsolationVariables isolationR03_
Definition: Photon.h:452
float reco::Photon::hcalTowerSumEtConeDR04 ( ) const
inline
bool reco::Photon::isEB ( ) const
inline
bool reco::Photon::isEBEEGap ( ) const
inline
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 122 of file Photon.h.

References isEBEtaGap(), and isEBPhiGap().

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

122 { return (isEBEtaGap() || isEBPhiGap()); }
bool isEBPhiGap() const
Definition: Photon.h:124
bool isEBEtaGap() const
Definition: Photon.h:123
bool reco::Photon::isEBPhiGap ( ) const
inline
bool reco::Photon::isEE ( ) const
inline
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 126 of file Photon.h.

References isEEDeeGap(), and isEERingGap().

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

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

Retrieve photonCore attributes.

Definition at line 55 of file Photon.h.

References photonCore().

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

Implement Candidate method for particle species.

Reimplemented from reco::LeafCandidate.

Definition at line 83 of file Photon.h.

References funct::true.

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

Definition at line 56 of file Photon.h.

References photonCore().

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

Definition at line 186 of file Photon.h.

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

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

MIP variables.

Definition at line 270 of file Photon.h.

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

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

Definition at line 273 of file Photon.h.

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

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

Definition at line 275 of file Photon.h.

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

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

Definition at line 274 of file Photon.h.

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

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

Definition at line 272 of file Photon.h.

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

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

Definition at line 271 of file Photon.h.

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

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

Definition at line 433 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

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

Definition at line 410 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

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

Definition at line 381 of file Photon.h.

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

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

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

Definition at line 379 of file Photon.h.

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

IsolationVariables isolationR03_
Definition: Photon.h:452
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 42 of file Photon.cc.

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

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

Definition at line 197 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 ZToMuMuGammaAnalyzer::mumuGammaInvMass(), and egHLT::OffPho::p4().

198  {
199  switch(type)
200  {
201  case ecal_standard: return eCorrections_.scEcalP4 ;
202  case ecal_photons: return eCorrections_.phoEcalP4 ;
205  default: throw cms::Exception("reco::Photon")<<"unexpected p4 type: "<< type << " cannot return p4 ";
206  }
207  }
type
Definition: HCALResponse.h:22
LorentzVector regression2P4
Definition: Photon.h:210
EnergyCorrections eCorrections_
Definition: Photon.h:454
LorentzVector regression1P4
Definition: Photon.h:207
float reco::Photon::pfMVA ( ) const
inline

Definition at line 435 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

435 {return pfID_.mva;}
PflowIDVariables pfID_
Definition: Photon.h:457
reco::SuperClusterRef reco::Photon::pfSuperCluster ( ) const
inline

Ref to PFlow SuperCluster.

Definition at line 60 of file Photon.h.

References photonCore().

Referenced by ggPFPhotons::fillPFClusters(), and ggPFPhotons::getPFPhoECorr().

60 {return this->photonCore()->pfSuperCluster();}
reco::PhotonCoreRef photonCore() const
returns a reference to the core photon object
Definition: Photon.h:50
reco::PhotonCoreRef reco::Photon::photonCore ( ) const
inline

returns a reference to the core photon object

Definition at line 50 of file Photon.h.

References photonCore_.

Referenced by conversions(), conversionsOneLeg(), conversionTrackProvenance(), electronPixelSeeds(), hasConversionTracks(), hasPixelSeed(), isPFlowPhoton(), isStandardPhoton(), pfSuperCluster(), and superCluster().

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

Definition at line 411 of file Photon.h.

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

Referenced by PhotonValidator::analyze().

411 {return pfIsolation_.photonIso;}
PflowIsolationVariables pfIsolation_
Definition: Photon.h:456
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 236 of file Photon.h.

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

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

Definition at line 93 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().

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

Definition at line 235 of file Photon.h.

References alignCSCRings::e, and eCorrections_.

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

set flags for photons in the ECAL fiducial volume

Definition at line 115 of file Photon.h.

References a, and fiducialFlagBlock_.

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

set relevant isolation variables

Definition at line 334 of file Photon.h.

References isolationR03_, and isolationR04_.

334 { isolationR04_ = isolInDr04 ; isolationR03_ = isolInDr03 ;}
IsolationVariables isolationR03_
Definition: Photon.h:452
IsolationVariables isolationR04_
Definition: Photon.h:451
void reco::Photon::setMIPVariables ( const MIPVariables mipVar)
inline

set mip Variables

Definition at line 278 of file Photon.h.

References mipVariableBlock_.

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

Definition at line 165 of file Photon.cc.

References reco::Photon::EnergyCorrections::candidateP4type, ecal_photons, ecal_standard, eCorrections_, 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().

165  {
166 
167 
168  switch(type)
169  {
170  case ecal_standard:
173  break ;
174  case ecal_photons:
177  break ;
178  case regression1:
181  case regression2:
184  break ;
185  default:
186  throw cms::Exception("reco::Photon")<<"unexpected p4 type: "<< type ;
187  }
188  if (setToRecoCandidate)
189  {
190  setP4(p4) ;
192  }
193 
194 
195 }
type
Definition: HCALResponse.h:22
LorentzVector regression2P4
Definition: Photon.h:210
EnergyCorrections eCorrections_
Definition: Photon.h:454
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
Definition: Photon.cc:165
LorentzVector regression1P4
Definition: Photon.h:207
virtual const LorentzVector & p4() const
four-momentum Lorentz vector
void reco::Photon::setPflowIDVariables ( const PflowIDVariables pfid)
inline

Definition at line 437 of file Photon.h.

References pfID_.

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

Set Particle Flow Isolation variables.

Definition at line 414 of file Photon.h.

References pfIsolation_.

414 { pfIsolation_ = pfisol;}
PflowIsolationVariables pfIsolation_
Definition: Photon.h:456
void reco::Photon::setShowerShapeVariables ( const ShowerShape a)
inline

Definition at line 165 of file Photon.h.

References a, and showerShapeBlock_.

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

set primary event vertex used to define photon direction

Reimplemented from reco::LeafCandidate.

Definition at line 50 of file Photon.cc.

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

50  {
51  math::XYZVectorF direction = caloPosition() - vertex;
52  double energy = this->energy();
53  math::XYZVectorF momentum = direction.unit() * energy;
54  math::XYZTLorentzVector lv(momentum.x(), momentum.y(), momentum.z(), energy );
55  setP4(lv);
56  vertex_ = vertex;
57 }
virtual const Point & vertex() const
vertex position
virtual Vector momentum() const
spatial momentum vector
Point vertex_
vertex position
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:30
virtual double energy() const
energy
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float > > XYZVectorF
spatial vector with cartesian internal representation
Definition: Vector3D.h:18
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:79
void setP4(P4type type, const LorentzVector &p4, float p4Error, bool setToRecoCandidate)
Definition: Photon.cc:165
float reco::Photon::sigmaEtaEta ( ) const
inline

Definition at line 187 of file Photon.h.

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

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

ShowerShape showerShapeBlock_
Definition: Photon.h:453
float reco::Photon::sigmaIetaIeta ( ) const
inline
reco::SuperClusterRef Photon::superCluster ( ) const
virtual

Ref to SuperCluster.

Reimplemented from reco::RecoCandidate.

Reimplemented in pat::Photon.

Definition at line 59 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::embedSuperCluster(), egHLT::OffPho::etaSC(), egHLT::OffPho::etSC(), PFIsolationEstimator::fGetIsolationInRings(), egHLT::OffHelper::fillClusShapeData(), ggPFPhotons::fillPFClusters(), EgammaObjects::findRecoMass(), PhotonMIPHaloTagger::GetMipTrailFit(), ggPFClusters::getPFSuperclusterOverlap(), PhotonMIPHaloTagger::GetSeedHighestE(), ggPFPhotons::ggPFPhotons(), PFIsolationEstimator::matchPFObject(), PhotonEqual::operator()(), overlap(), egHLT::OffPho::phiSC(), r9(), ggPFPhotons::recoPhotonClusterLink(), ggPFTracks::SLCombZVtx(), pat::Photon::superCluster(), and ggPFPhotons::SuperClusterSize().

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

Definition at line 375 of file Photon.h.

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

IsolationVariables isolationR03_
Definition: Photon.h:452
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 444 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 457 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 446 of file Photon.h.

Referenced by photonCore().

bool reco::Photon::pixelSeed_
private

Definition at line 448 of file Photon.h.

Referenced by Photon().

ShowerShape reco::Photon::showerShapeBlock_
private