CMS 3D CMS Logo

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

Analysis-level electron class. More...

#include "DataFormats/PatCandidates/interface/Electron.h"

Inheritance diagram for pat::Electron:
pat::Lepton< reco::GsfElectron > pat::PATObject< reco::GsfElectron > reco::GsfElectron reco::RecoCandidate reco::LeafCandidate reco::Candidate

Public Types

typedef std::pair< std::string,
float > 
IdPair
 
enum  IPTYPE {
  None = 0, PV2D = 1, PV3D = 2, BS2D = 3,
  BS3D = 4
}
 
typedef enum pat::Electron::IPTYPE IpType
 
- Public Types inherited from pat::PATObject< reco::GsfElectron >
typedef reco::GsfElectron base_type
 
- Public Types inherited from reco::GsfElectron
enum  Classification {
  UNKNOWN =-1, GOLDEN =0, BIGBREM =1, BADTRACK =2,
  SHOWERING =3, GAP =4
}
 
enum  P4Kind { P4_UNKNOWN =-1, P4_FROM_SUPER_CLUSTER =0, P4_COMBINATION =1, P4_PFLOW_COMBINATION =2 }
 
- 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

const std::vector
< reco::CaloCluster > & 
basicClusters () const
 
float caloIso () const
 Overload of pat::Lepton::caloIso(); returns the sum of ecalIso() and hcalIso. More...
 
virtual Electronclone () const
 required reimplementation of the Candidate's clone method More...
 
reco::TrackRef closestCtfTrackRef () const
 override the reco::GsfElectron::closestCtfTrackRef method, to access the internal storage of the track More...
 
virtual reco::GsfElectronCoreRef core () const
 override the virtual reco::GsfElectron::core method, so that the embedded core can be used by GsfElectron client methods More...
 
double dB (IpType type=None) const
 Impact parameter wrt primary vertex or beamspot. More...
 
const LorentzVectorecalDrivenMomentum () const
 
float ecalIso () const
 Overload of pat::Lepton::ecalIso(); returns the value of the summed Et of all recHits in the ecal in a cone of deltaR<0.4. More...
 
double ecalRegressionEnergy () const
 
double ecalRegressionError () const
 
double ecalRegressionScale () const
 
double ecalRegressionSmear () const
 
double ecalScale () const
 get scale corrections /smearings More...
 
double ecalSmear () const
 
double ecalTrackRegressionEnergy () const
 regression2 More...
 
double ecalTrackRegressionError () const
 
double ecalTrackRegressionScale () const
 
double ecalTrackRegressionSmear () const
 
double edB (IpType type=None) const
 Uncertainty on the corresponding impact parameter. More...
 
 Electron ()
 default constructor More...
 
 Electron (const reco::GsfElectron &anElectron)
 constructor from reco::GsfElectron More...
 
 Electron (const edm::RefToBase< reco::GsfElectron > &anElectronRef)
 constructor from a RefToBase to a reco::GsfElectron (to be superseded by Ptr counterpart) More...
 
 Electron (const edm::Ptr< reco::GsfElectron > &anElectronRef)
 constructor from a Ptr to a reco::GsfElectron More...
 
float electronID (const std::string &name) const
 Returns a specific electron ID associated to the pat::Electron given its name. More...
 
float electronID (const char *name) const
 
const std::vector< IdPair > & electronIDs () const
 Returns all the electron IDs in the form of <name,value> pairs. The 'default' ID is the first in the list. More...
 
void embedBasicClusters ()
 method to store the electron's basic clusters More...
 
void embedGsfElectronCore ()
 method to store the electron's core internally More...
 
void embedGsfTrack ()
 method to store the electron's GsfTrack internally More...
 
void embedPFCandidate ()
 embed the PFCandidate pointed to by pfCandidateRef_ More...
 
void embedPflowBasicClusters ()
 method to store the electron's pflow basic clusters More...
 
void embedPflowPreshowerClusters ()
 method to store the electron's pflow preshower clusters More...
 
void embedPflowSuperCluster ()
 method to store the electron's PflowSuperCluster internally More...
 
void embedPreshowerClusters ()
 method to store the electron's preshower clusters More...
 
void embedRecHits (const EcalRecHitCollection *rechits)
 method to store the RecHits internally - can be called from the PATElectronProducer More...
 
void embedSeedCluster ()
 method to store the electron's seedcluster internally More...
 
void embedSuperCluster ()
 method to store the electron's SuperCluster internally More...
 
void embedTrack ()
 method to store the electron's Track internally More...
 
reco::GsfTrackRef gsfTrack () const
 override the reco::GsfElectron::gsfTrack method, to access the internal storage of the supercluster More...
 
float hcalIso () const
 Overload of pat::Lepton::hcalIso(); returns the value of the summed Et of all caloTowers in the hcal in a cone of deltaR<0.4. More...
 
double ip3d () const
 ip3d More...
 
bool isElectronIDAvailable (const std::string &name) const
 Returns true if a specific ID is available in this pat::Electron. More...
 
bool isElectronIDAvailable (const char *name) const
 
bool isPF () const
 
size_t numberOfSourceCandidatePtrs () const
 get the number of non-null PFCandidates More...
 
reco::SuperClusterRef parentSuperCluster () const
 override the reco::GsfElectron::pflowSuperCluster method, to access the internal storage of the pflowSuperCluster More...
 
bool passConversionVeto () const
 vertex fit combined with missing number of hits method More...
 
reco::PFCandidateRef pfCandidateRef () const
 reference to the source PFCandidates; null if this has been built from a standard electron More...
 
const std::vector
< reco::CaloCluster > & 
pflowBasicClusters () const
 
const std::vector
< reco::CaloCluster > & 
pflowPreshowerClusters () const
 
const std::vector
< reco::CaloCluster > & 
preshowerClusters () const
 
double r9 () const
 
const EcalRecHitCollectionrecHits () const
 
reco::CaloClusterPtr seed () const
 direct access to the seed cluster More...
 
void setDB (double dB, double edB, IpType type=None)
 Set impact parameter of a certain type and its uncertainty. More...
 
void setEcalDrivenMomentum (const Candidate::LorentzVector &mom)
 
void setEcalRegressionEnergy (double val, double err)
 set regression1 More...
 
void setEcalRegressionScale (double val)
 
void setEcalRegressionSmear (double val)
 
void setEcalScale (double val)
 set scale corrections / smearings More...
 
void setEcalSmear (double val)
 
void setEcalTrackRegressionEnergy (double val, double err)
 set regression2 More...
 
void setEcalTrackRegressionScale (double val)
 
void setEcalTrackRegressionSmear (double val)
 
void setElectronIDs (const std::vector< IdPair > &ids)
 Store multiple electron ID values, discarding existing ones. The first one in the list becomes the 'default' electron id. More...
 
void setIsPF (bool hasPFCandidate)
 
void setMvaVariables (double r9, double sigmaIphiIphi, double sigmaIetaIphi, double ip3d)
 set missing mva input variables More...
 
void setPassConversionVeto (bool flag)
 
void setPFCandidateRef (const reco::PFCandidateRef &ref)
 add a reference to the source IsolatedPFCandidate More...
 
double sigmaIetaIphi () const
 sigmaIEtaIPhi More...
 
double sigmaIphiIphi () const
 sigmaIPhiPhi More...
 
reco::CandidatePtr sourceCandidatePtr (size_type i) const
 get the source candidate pointer with index i More...
 
reco::SuperClusterRef superCluster () const
 override the reco::GsfElectron::superCluster method, to access the internal storage of the supercluster More...
 
reco::TrackRef track () const
 returns nothing. Use either gsfTrack or closestCtfTrack More...
 
float trackIso () const
 Overload of pat::Lepton::trackIso(); returns the value of the summed track pt in a cone of deltaR<0.4. More...
 
virtual ~Electron ()
 destructor More...
 
- Public Member Functions inherited from pat::Lepton< reco::GsfElectron >
float caloIso () const
 
float chargedHadronIso () const
 
float ecalIso () const
 
const IsoDepositecalIsoDeposit () const
 
void ecalIsoDeposit (const IsoDeposit &dep)
 
const reco::GenParticlegenLepton () const
 
float hcalIso () const
 
const IsoDeposithcalIsoDeposit () const
 
void hcalIsoDeposit (const IsoDeposit &dep)
 
const IsoDepositisoDeposit (IsolationKeys key) const
 Returns the IsoDeposit associated with some key, or a null pointer if it is not available. More...
 
 Lepton ()
 
 Lepton (const reco::GsfElectron &aLepton)
 
 Lepton (const edm::RefToBase< reco::GsfElectron > &aLeptonRef)
 
 Lepton (const edm::Ptr< reco::GsfElectron > &aLeptonRef)
 
float neutralHadronIso () const
 
float particleIso () const
 
float photonIso () const
 
float puChargedHadronIso () const
 
void setEcalIso (float caloIso)
 Sets ecal isolation variable. More...
 
void setGenLepton (const reco::GenParticleRef &gl, bool embed=false)
 
void setHcalIso (float caloIso)
 Sets hcal isolation variable. More...
 
void setIsoDeposit (IsolationKeys key, const IsoDeposit &dep)
 Sets the IsoDeposit associated with some key; if it is already existent, it is overwritten. More...
 
void setIsolation (IsolationKeys key, float value)
 
void setTrackIso (float trackIso)
 Sets tracker isolation variable. More...
 
void setUserIso (float value, uint8_t index=0)
 Sets user isolation variable index. More...
 
float trackIso () const
 
const IsoDeposittrackIsoDeposit () const
 
void trackIsoDeposit (const IsoDeposit &dep)
 
float userIso (uint8_t index=0) const
 
const IsoDeposituserIsoDeposit (uint8_t index=0) const
 
void userIsoDeposit (const IsoDeposit &dep, uint8_t index=0)
 
float userIsolation (IsolationKeys key) const
 
float userIsolation (const std::string &key) const
 
virtual ~Lepton ()
 
- Public Member Functions inherited from pat::PATObject< reco::GsfElectron >
void addGenParticleRef (const reco::GenParticleRef &ref)
 
void addTriggerObjectMatch (const TriggerObjectStandAlone &trigObj)
 add a trigger match More...
 
void addUserCand (const std::string &label, const reco::CandidatePtr &data)
 Set user-defined int. More...
 
void addUserData (const std::string &label, const T &data, bool transientOnly=false)
 
void addUserDataFromPtr (const std::string &label, const edm::Ptr< pat::UserData > &data)
 
void addUserFloat (const std::string &label, float data)
 Set user-defined float. More...
 
void addUserInt (const std::string &label, int32_t data)
 Set user-defined int. More...
 
std::vector< std::pair
< std::string,
pat::LookupTableRecord > > 
efficiencies () const
 Returns the efficiencies as <name,value> pairs (by value) More...
 
const pat::LookupTableRecordefficiency (const std::string &name) const
 Returns an efficiency given its name. More...
 
const std::vector< std::string > & efficiencyNames () const
 Returns the list of the names of the stored efficiencies. More...
 
const std::vector
< pat::LookupTableRecord > & 
efficiencyValues () const
 Returns the list of the values of the stored efficiencies (the ordering is the same as in efficiencyNames()) More...
 
void embedGenParticle ()
 
const reco::GenParticlegenParticle (size_t idx=0) const
 
reco::GenParticleRef genParticleById (int pdgId, int status, uint8_t autoCharge=0) const
 
reco::GenParticleRef genParticleRef (size_t idx=0) const
 
std::vector< reco::GenParticleRefgenParticleRefs () const
 
size_t genParticlesSize () const
 Number of generator level particles stored as ref or embedded. More...
 
const pat::CandKinResolutiongetKinResolution (const std::string &label="") const
 
bool hasKinResolution (const std::string &label="") const
 Check if the kinematic resolutions are stored into this object (possibly specifying a label for them) More...
 
bool hasOverlaps (const std::string &label) const
 Returns true if there was at least one overlap for this test label. More...
 
bool hasUserCand (const std::string &key) const
 Return true if there is a user-defined int with a given name. More...
 
bool hasUserData (const std::string &key) const
 Check if user data with a specific type is present. More...
 
bool hasUserFloat (const std::string &key) const
 Return true if there is a user-defined float with a given name. More...
 
bool hasUserFloat (const char *key) const
 a CINT-friendly interface More...
 
bool hasUserInt (const std::string &key) const
 Return true if there is a user-defined int with a given name. More...
 
const reco::CandidateoriginalObject () const
 access to the original object; returns zero for null Ref and throws for unavailable collection More...
 
const edm::Ptr< reco::Candidate > & originalObjectRef () const
 reference to original object. Returns a null reference if not available More...
 
const std::vector< std::string > & overlapLabels () const
 Returns the labels of the overlap tests that found at least one overlap. More...
 
const reco::CandidatePtrVectoroverlaps (const std::string &label) const
 
 PATObject ()
 default constructor More...
 
 PATObject (const reco::GsfElectron &obj)
 constructor from a base object (leaves invalid reference to original object!) More...
 
 PATObject (const edm::RefToBase< reco::GsfElectron > &ref)
 constructor from reference More...
 
 PATObject (const edm::Ptr< reco::GsfElectron > &ref)
 constructor from reference More...
 
double resolE (const std::string &label="") const
 Resolution on energy, possibly with a label to specify which resolution to use. More...
 
double resolEt (const std::string &label="") const
 Resolution on et, possibly with a label to specify which resolution to use. More...
 
double resolEta (const std::string &label="") const
 Resolution on eta, possibly with a label to specify which resolution to use. More...
 
double resolM (const std::string &label="") const
 
double resolP (const std::string &label="") const
 Resolution on p, possibly with a label to specify which resolution to use. More...
 
double resolPhi (const std::string &label="") const
 Resolution on phi, possibly with a label to specify which resolution to use. More...
 
double resolPInv (const std::string &label="") const
 Resolution on 1/p, possibly with a label to specify which resolution to use. More...
 
double resolPt (const std::string &label="") const
 Resolution on pt, possibly with a label to specify which resolution to use. More...
 
double resolPx (const std::string &label="") const
 Resolution on px, possibly with a label to specify which resolution to use. More...
 
double resolPy (const std::string &label="") const
 Resolution on py, possibly with a label to specify which resolution to use. More...
 
double resolPz (const std::string &label="") const
 Resolution on pz, possibly with a label to specify which resolution to use. More...
 
double resolTheta (const std::string &label="") const
 Resolution on theta, possibly with a label to specify which resolution to use. More...
 
void setEfficiency (const std::string &name, const pat::LookupTableRecord &value)
 
void setGenParticle (const reco::GenParticle &particle)
 Set the generator level particle from a particle not in the Event (embedding it, of course) More...
 
void setGenParticleRef (const reco::GenParticleRef &ref, bool embed=false)
 Set the generator level particle reference. More...
 
void setKinResolution (const pat::CandKinResolution &resol, const std::string &label="")
 Add a kinematic resolution to this object (possibly with a label) More...
 
void setOverlaps (const std::string &label, const reco::CandidatePtrVector &overlaps)
 
const TriggerObjectStandAlonetriggerObjectMatch (const size_t idx=0) const
 get one matched trigger object by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const std::string &nameAlgorithm, const bool algoCondAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const char *nameAlgorithm, const bool algoCondAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const std::string &nameAlgorithm, const unsigned algoCondAccepted, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByAlgorithm (const char *nameAlgorithm, const unsigned algoCondAccepted, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByCollection (const std::string &coll, const size_t idx=0) const
 get one matched trigger object from a certain collection by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByCollection (const char *coll, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByCondition (const std::string &nameCondition, const size_t idx=0) const
 get one matched L1 object used in a succeeding object combination of a certain L1 condition by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByCondition (const char *nameCondition, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByFilter (const std::string &labelFilter, const size_t idx=0) const
 get one matched HLT object used in a certain HLT filter by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByFilter (const char *labelFilter, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByFilterID (const unsigned triggerObjectType, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const std::string &namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const char *namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const std::string &namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByPath (const char *namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1, const size_t idx=0) const
 
const TriggerObjectStandAlonetriggerObjectMatchByType (const trigger::TriggerObjectType triggerObjectType, const size_t idx=0) const
 get one matched trigger object of a certain type by index More...
 
const TriggerObjectStandAlonetriggerObjectMatchByType (const unsigned triggerObjectType, const size_t idx=0) const
 
const
TriggerObjectStandAloneCollection
triggerObjectMatches () const
 get all matched trigger objects More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const std::string &nameAlgorithm, const bool algoCondAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const char *nameAlgorithm, const bool algoCondAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const std::string &nameAlgorithm, const unsigned algoCondAccepted) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByAlgorithm (const char *nameAlgorithm, const unsigned algoCondAccepted) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCollection (const std::string &coll) const
 get all matched trigger objects from a certain collection More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCollection (const char *coll) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCondition (const std::string &nameCondition) const
 get all matched L1 objects used in a succeeding object combination of a certain L1 condition More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByCondition (const char *nameCondition) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilter (const std::string &labelFilter) const
 get all matched HLT objects used in a certain HLT filter More...
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilter (const char *labelFilter) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByFilterID (const unsigned triggerObjectType) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const std::string &namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const char *namePath, const bool pathLastFilterAccepted=false, const bool pathL3FilterAccepted=true) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const std::string &namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByPath (const char *namePath, const unsigned pathLastFilterAccepted, const unsigned pathL3FilterAccepted=1) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByType (const trigger::TriggerObjectType triggerObjectType) const
 
const
TriggerObjectStandAloneCollection 
triggerObjectMatchesByType (const unsigned triggerObjectType) const
 
reco::CandidatePtr userCand (const std::string &key) const
 
const std::vector< std::string > & userCandNames () const
 Get list of user-defined cand names. More...
 
const TuserData (const std::string &key) const
 Returns user-defined data. Returns NULL if the data is not present, or not of type T. More...
 
const void * userDataBare (const std::string &key) const
 
const std::vector< std::string > & userDataNames () const
 Get list of user data object names. More...
 
const std::string & userDataObjectType (const std::string &key) const
 Get human-readable type of user data object, for debugging. More...
 
float userFloat (const std::string &key) const
 
float userFloat (const char *key) const
 a CINT-friendly interface More...
 
const std::vector< std::string > & userFloatNames () const
 Get list of user-defined float names. More...
 
int32_t userInt (const std::string &key) const
 
const std::vector< std::string > & userIntNames () const
 Get list of user-defined int names. More...
 
virtual ~PATObject ()
 destructor More...
 
- Public Member Functions inherited from reco::GsfElectron
void addAmbiguousGsfTrack (const reco::GsfTrackRef &t)
 
bool ambiguous () const
 
GsfTrackRefVector::const_iterator ambiguousGsfTracksBegin () const
 
GsfTrackRefVector::const_iterator ambiguousGsfTracksEnd () const
 
GsfTrackRefVector::size_type ambiguousGsfTracksSize () const
 
CaloCluster_iterator basicClustersBegin () const
 
CaloCluster_iterator basicClustersEnd () const
 
int basicClustersSize () const
 
float caloEnergy () const
 
math::XYZPoint caloPosition () const
 
P4Kind candidateP4Kind () const
 
const ChargeInfochargeInfo () const
 
Classification classification () const
 
const ClassificationVariablesclassificationVariables () const
 
void clearAmbiguousGsfTracks ()
 
GsfElectronclone (const GsfElectronCoreRef &core, const CaloClusterPtr &electronCluster, const TrackRef &closestCtfTrack, const TrackBaseRef &conversionPartner, const GsfTrackRefVector &ambiguousTracks) const
 
ClosestCtfTrack closestCtfTrack () const
 
TrackRef closestCtfTrackRef () const
 
virtual TrackRef closestTrack () const
 
float convDcot () const
 
float convDist () const
 
const ConversionRejectionconversionRejectionVariables () const
 
int convFlags () const
 
TrackBaseRef convPartner () const
 
float convRadius () const
 
void correctEcalEnergy (float newEnergy, float newEnergyError)
 
float correctedEcalEnergy () const
 
float correctedEcalEnergyError () const
 
const Correctionscorrections () const
 
void correctMomentum (const LorentzVector &p4, float trackMomentumError, float p4Error)
 
float ctfGsfOverlap () const
 
float deltaEtaEleClusterTrackAtCalo () const
 
float deltaEtaSeedClusterTrackAtCalo () const
 
float deltaEtaSuperClusterTrackAtVtx () const
 
float deltaPhiEleClusterTrackAtCalo () const
 
float deltaPhiSeedClusterTrackAtCalo () const
 
float deltaPhiSuperClusterTrackAtVtx () const
 
float dr03EcalRecHitSumEt () const
 
float dr03HcalDepth1TowerSumEt () const
 
float dr03HcalDepth1TowerSumEtBc () const
 
float dr03HcalDepth2TowerSumEt () const
 
float dr03HcalDepth2TowerSumEtBc () const
 
float dr03HcalTowerSumEt () const
 
float dr03HcalTowerSumEtBc () const
 
const IsolationVariablesdr03IsolationVariables () const
 
float dr03TkSumPt () const
 
float dr04EcalRecHitSumEt () const
 
float dr04HcalDepth1TowerSumEt () const
 
float dr04HcalDepth1TowerSumEtBc () const
 
float dr04HcalDepth2TowerSumEt () const
 
float dr04HcalDepth2TowerSumEtBc () const
 
float dr04HcalTowerSumEt () const
 
float dr04HcalTowerSumEtBc () const
 
const IsolationVariablesdr04IsolationVariables () const
 
float dr04TkSumPt () const
 
float e1x5 () const
 
float e2x5Max () const
 
float e5x5 () const
 
bool ecalDriven () const
 
bool ecalDrivenSeed () const
 
float ecalEnergy () const
 
float ecalEnergyError () const
 
float eEleClusterOverPout () const
 
CaloClusterPtr electronCluster () const
 
float eSeedClusterOverP () const
 
float eSeedClusterOverPout () const
 
float eSuperClusterOverP () const
 
float fbrem () const
 
const FiducialFlagsfiducialFlags () const
 
 GsfElectron ()
 
 GsfElectron (const GsfElectronCoreRef &)
 
 GsfElectron (const GsfElectron &, const GsfElectronCoreRef &)
 
 GsfElectron (const GsfElectron &electron, const GsfElectronCoreRef &core, const CaloClusterPtr &electronCluster, const TrackRef &closestCtfTrack, const TrackBaseRef &conversionPartner, const GsfTrackRefVector &ambiguousTracks)
 
 GsfElectron (int charge, const ChargeInfo &, const GsfElectronCoreRef &, const TrackClusterMatching &, const TrackExtrapolations &, const ClosestCtfTrack &, const FiducialFlags &, const ShowerShape &, const ConversionRejection &)
 
float hadronicOverEm () const
 
float hadronicOverEm1 () const
 
float hadronicOverEm2 () const
 
float hcalDepth1OverEcal () const
 
float hcalDepth1OverEcalBc () const
 
float hcalDepth2OverEcal () const
 
float hcalDepth2OverEcalBc () const
 
float hcalOverEcal () const
 
float hcalOverEcalBc () const
 
const std::vector
< CaloTowerDetId > & 
hcalTowersBehindClusters () const
 
bool isEB () const
 
bool isEBEEGap () const
 
bool isEBEtaGap () const
 
bool isEBGap () const
 
bool isEBPhiGap () const
 
bool isEcalEnergyCorrected () const
 
bool isEE () const
 
bool isEEDeeGap () const
 
bool isEEGap () const
 
bool isEERingGap () const
 
virtual bool isElectron () const
 
bool isEnergyScaleCorrected () const
 
bool isGap () const
 
bool isGsfCtfChargeConsistent () const
 
bool isGsfCtfScPixChargeConsistent () const
 
bool isGsfScPixChargeConsistent () const
 
const IsolationVariablesisolationVariables03 () const
 
const IsolationVariablesisolationVariables04 () const
 
float mva () const
 
const MvaInputmvaInput () const
 
const MvaOutputmvaOutput () const
 
int numberOfBrems () const
 
virtual bool overlap (const Candidate &) const
 check overlap with another candidate More...
 
const LorentzVectorp4 (P4Kind kind) const
 
float p4Error (P4Kind kind) const
 
SuperClusterRef parentSuperCluster () const
 
bool passingCutBasedPreselection () const
 
bool passingMvaPreselection () const
 
bool passingPflowPreselection () const
 
const PflowIsolationVariablespfIsolationVariables () const
 
const ShowerShapepfShowerShape () const
 
float pfSuperClusterFbrem () const
 
float r9 () const
 
float scE1x5 () const
 
float scE2x5Max () const
 
float scE5x5 () const
 
int scPixCharge () const
 
float scSigmaEtaEta () const
 
float scSigmaIEtaIEta () const
 
void setAmbiguous (bool flag)
 
void setClassification (Classification myclass)
 
void setClassificationVariables (const ClassificationVariables &cv)
 
void setCorrectedEcalEnergy (float newEnergy)
 
void setCorrectedEcalEnergyError (float newEnergyError)
 
void setDeltaEtaSuperClusterAtVtx (float de)
 
void setDeltaPhiSuperClusterAtVtx (float dphi)
 
void setDr03Isolation (const IsolationVariables &dr03)
 
void setDr04Isolation (const IsolationVariables &dr04)
 
void setEcalEnergyError (float energyError)
 
void setIsolation03 (const IsolationVariables &dr03)
 
void setIsolation04 (const IsolationVariables &dr04)
 
void setMvaInput (const MvaInput &mi)
 
void setMvaOutput (const MvaOutput &mo)
 
void setP4 (P4Kind kind, const LorentzVector &p4, float p4Error, bool setCandidate)
 
void setPassCutBasedPreselection (bool flag)
 
void setPassMvaPreselection (bool flag)
 
void setPassPflowPreselection (bool flag)
 
void setPfIsolationVariables (const PflowIsolationVariables &iso)
 
void setPfShowerShape (const ShowerShape &shape)
 
void setPfSuperClusterFbrem (float fbrem)
 
void setSuperClusterFbrem (float fbrem)
 
void setTrackFbrem (float fbrem)
 
void setTrackMomentumError (float trackMomentumError)
 
float shFracInnerHits () const
 
const ShowerShapeshowerShape () const
 
float sigmaEtaEta () const
 
float sigmaIetaIeta () const
 
float sigmaIphiIphi () const
 
float superClusterFbrem () const
 
math::XYZPoint superClusterPosition () const
 
const TrackClusterMatchingtrackClusterMatching () const
 
bool trackerDrivenSeed () const
 
const TrackExtrapolationstrackExtrapolations () const
 
float trackFbrem () const
 
math::XYZVectorF trackMomentumAtCalo () const
 
math::XYZVectorF trackMomentumAtEleClus () const
 
math::XYZVectorF trackMomentumAtVtx () const
 
math::XYZVectorF trackMomentumAtVtxWithConstraint () const
 
float trackMomentumError () const
 
math::XYZVectorF trackMomentumOut () const
 
math::XYZPointF trackPositionAtCalo () const
 
math::XYZPointF TrackPositionAtCalo () const
 
math::XYZPointF trackPositionAtVtx () const
 
math::XYZPointF TrackPositionAtVtx () const
 
virtual ~GsfElectron ()
 
- 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 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 (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 isGlobalMuon () const
 
virtual bool isJet () const
 
virtual bool isMuon () const
 
virtual bool isPhoton () 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...
 
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 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 void setVertex (const Point &vertex)
 set vertex More...
 
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...
 

Protected Member Functions

void initImpactParameters ()
 init impact parameter defaults (for use in a constructor) 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

std::vector< reco::CaloClusterbasicClusters_
 Place to store electron's basic clusters internally. More...
 
bool cachedDB_
 True if impact parameter has been cached. More...
 
std::vector< bool > cachedIP_
 True if the IP (former dB) has been cached. More...
 
double dB_
 Impact parameter at the primary vertex. More...
 
LorentzVector ecalDrivenMomentum_
 ECAL-driven momentum. More...
 
double ecalRegressionEnergy_
 output of regression More...
 
double ecalRegressionError_
 
double ecalRegressionScale_
 
double ecalRegressionSmear_
 
double ecalScale_
 scale corrections and smearing applied or to be be applied. Initialized to -99999. More...
 
double ecalSmear_
 
double ecalTrackRegressionEnergy_
 
double ecalTrackRegressionError_
 
double ecalTrackRegressionScale_
 
double ecalTrackRegressionSmear_
 
double edB_
 Impact paramater uncertainty at the primary vertex. More...
 
std::vector< double > eip_
 Impact parameter uncertainty as recommended by the tracking group. More...
 
std::vector< IdPairelectronIDs_
 Electron IDs. More...
 
bool embeddedGsfElectronCore_
 True if electron's gsfElectronCore is stored internally. More...
 
bool embeddedGsfTrack_
 True if electron's gsfTrack is stored internally. More...
 
bool embeddedPFCandidate_
 true if the IsolatedPFCandidate is embedded More...
 
bool embeddedPflowSuperCluster_
 True if electron's pflowsupercluster is stored internally. More...
 
bool embeddedRecHits_
 True if RecHits stored internally. More...
 
bool embeddedSeedCluster_
 True if seed cluster is stored internally. More...
 
bool embeddedSuperCluster_
 True if electron's supercluster is stored internally. More...
 
bool embeddedTrack_
 True if electron's track is stored internally. More...
 
std::vector
< reco::GsfElectronCore
gsfElectronCore_
 Place to store electron's gsfElectronCore internally. More...
 
std::vector< reco::GsfTrackgsfTrack_
 Place to store electron's gsfTrack internally. More...
 
double ip3d_
 
std::vector< double > ip_
 Impact parameter at the primary vertex,. More...
 
bool isPF_
 
bool passConversionVeto_
 conversion veto More...
 
reco::PFCandidateCollection pfCandidate_
 A copy of the source IsolatedPFCandidate is stored in this vector if embeddedPFCandidate_ if True. More...
 
reco::PFCandidateRef pfCandidateRef_
 reference to the IsolatedPFCandidate this has been built from; null if this has been built from a standard electron More...
 
std::vector< reco::CaloClusterpflowBasicClusters_
 Place to store electron's pflow basic clusters internally. More...
 
std::vector< reco::CaloClusterpflowPreshowerClusters_
 Place to store electron's pflow preshower clusters internally. More...
 
std::vector< reco::SuperClusterpflowSuperCluster_
 Place to store electron's pflow supercluster internally. More...
 
std::vector< reco::CaloClusterpreshowerClusters_
 Place to store electron's preshower clusters internally. More...
 
double r9_
 additional missing mva variables : 14/04/2012 More...
 
EcalRecHitCollection recHits_
 Place to store electron's RecHits internally (5x5 around seed+ all RecHits) More...
 
std::vector< reco::CaloClusterseedCluster_
 Place to store electron's seed cluster internally. More...
 
double sigmaIetaIphi_
 
double sigmaIphiIphi_
 
std::vector< reco::SuperClustersuperCluster_
 Place to store electron's supercluster internally. More...
 
std::vector< reco::Tracktrack_
 Place to store electron's track internally. More...
 
- Protected Attributes inherited from pat::Lepton< reco::GsfElectron >
IsoDepositPairs isoDeposits_
 
std::vector< float > isolations_
 
- Protected Attributes inherited from pat::PATObject< reco::GsfElectron >
std::vector< std::string > efficiencyNames_
 vector of the efficiencies (names) More...
 
std::vector
< pat::LookupTableRecord
efficiencyValues_
 vector of the efficiencies (values) More...
 
std::vector< reco::GenParticlegenParticleEmbedded_
 vector to hold an embedded generator level particle More...
 
std::vector< reco::GenParticleRefgenParticleRef_
 Reference to a generator level particle. More...
 
std::vector< std::string > kinResolutionLabels_
 
std::vector
< pat::CandKinResolution
kinResolutions_
 Kinematic resolutions. More...
 
std::vector
< reco::CandidatePtrVector
overlapItems_
 Overlapping items (sorted by distance) More...
 
std::vector< std::string > overlapLabels_
 Overlapping test labels (only if there are any overlaps) More...
 
edm::Ptr< reco::CandidaterefToOrig_
 
TriggerObjectStandAloneCollection triggerObjectMatchesEmbedded_
 vector of trigger matches More...
 
std::vector< std::string > userCandLabels_
 
std::vector< reco::CandidatePtruserCands_
 
std::vector< std::string > userDataLabels_
 User data object. More...
 
pat::UserDataCollection userDataObjects_
 
std::vector< std::string > userFloatLabels_
 
std::vector< float > userFloats_
 
std::vector< std::string > userIntLabels_
 
std::vector< int32_t > userInts_
 
- 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...
 

Friends

std::ostream & reco::operator<< (std::ostream &out, const pat::Electron &obj)
 pipe operator (introduced to use pat::Electron with PFTopProjectors) More...
 

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 Types inherited from pat::Lepton< reco::GsfElectron >
typedef std::vector< std::pair
< IsolationKeys,
pat::IsoDeposit > > 
IsoDepositPairs
 

Detailed Description

Analysis-level electron class.

pat::Electron implements the analysis-level electron class within the 'pat' namespace.

Please post comments and questions to the Physics Tools hypernews: https://hypernews.cern.ch/HyperNews/CMS/get/physTools.html

Author
Steven Lowette, Giovanni Petrucciani, Frederic Ronga

Definition at line 50 of file Electron.h.

Member Typedef Documentation

typedef std::pair<std::string,float> pat::Electron::IdPair

Definition at line 54 of file Electron.h.

Member Enumeration Documentation

Enumerator
None 
PV2D 
PV3D 
BS2D 
BS3D 

Definition at line 176 of file Electron.h.

Constructor & Destructor Documentation

Electron::Electron ( )

default constructor

Definition at line 12 of file Electron.cc.

References initImpactParameters().

Referenced by clone().

12  :
15  embeddedGsfTrack_(false),
16  embeddedSuperCluster_(false),
18  embeddedTrack_(false),
19  embeddedSeedCluster_(false),
20  embeddedRecHits_(false),
21  embeddedPFCandidate_(false),
23  cachedDB_(false),
24  dB_(0.0),
25  edB_(0.0),
30  ecalScale_(-99999.),
31  ecalSmear_(-99999.),
32  ecalRegressionScale_(-99999.),
33  ecalRegressionSmear_(-99999.),
36 {
38 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
double ecalRegressionEnergy_
output of regression
Definition: Electron.h:310
double ecalScale_
scale corrections and smearing applied or to be be applied. Initialized to -99999.
Definition: Electron.h:316
double ecalTrackRegressionSmear_
Definition: Electron.h:323
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
double ecalRegressionSmear_
Definition: Electron.h:320
bool embeddedRecHits_
True if RecHits stored internally.
Definition: Electron.h:274
double ecalTrackRegressionError_
Definition: Electron.h:313
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
void initImpactParameters()
init impact parameter defaults (for use in a constructor)
Definition: Electron.cc:120
double ecalTrackRegressionEnergy_
Definition: Electron.h:311
double ecalRegressionError_
Definition: Electron.h:312
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
double ecalRegressionScale_
Definition: Electron.h:319
double ecalSmear_
Definition: Electron.h:317
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
double ecalTrackRegressionScale_
Definition: Electron.h:322
math::PtEtaPhiELorentzVectorF LorentzVector
Electron::Electron ( const reco::GsfElectron anElectron)

constructor from reco::GsfElectron

Definition at line 41 of file Electron.cc.

References initImpactParameters().

41  :
42  Lepton<reco::GsfElectron>(anElectron),
44  embeddedGsfTrack_(false),
45  embeddedSuperCluster_(false),
47  embeddedTrack_(false),
48  embeddedSeedCluster_(false),
49  embeddedRecHits_(false),
50  embeddedPFCandidate_(false),
51  ecalDrivenMomentum_(anElectron.p4()),
52  cachedDB_(false),
53  dB_(0.0),
54  edB_(0.0)
55 {
57 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
const LorentzVector & p4(P4Kind kind) const
Definition: GsfElectron.cc:204
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
bool embeddedRecHits_
True if RecHits stored internally.
Definition: Electron.h:274
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
void initImpactParameters()
init impact parameter defaults (for use in a constructor)
Definition: Electron.cc:120
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
Electron::Electron ( const edm::RefToBase< reco::GsfElectron > &  anElectronRef)

constructor from a RefToBase to a reco::GsfElectron (to be superseded by Ptr counterpart)

Definition at line 60 of file Electron.cc.

References initImpactParameters().

60  :
61  Lepton<reco::GsfElectron>(anElectronRef),
63  embeddedGsfTrack_(false),
64  embeddedSuperCluster_(false),
66  embeddedTrack_(false),
67  embeddedSeedCluster_(false),
68  embeddedRecHits_(false),
69  embeddedPFCandidate_(false),
70  ecalDrivenMomentum_(anElectronRef->p4()),
71  cachedDB_(false),
72  dB_(0.0),
73  edB_(0.0)
74 {
76 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
const LorentzVector & p4(P4Kind kind) const
Definition: GsfElectron.cc:204
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
bool embeddedRecHits_
True if RecHits stored internally.
Definition: Electron.h:274
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
void initImpactParameters()
init impact parameter defaults (for use in a constructor)
Definition: Electron.cc:120
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
Electron::Electron ( const edm::Ptr< reco::GsfElectron > &  anElectronRef)

constructor from a Ptr to a reco::GsfElectron

Definition at line 79 of file Electron.cc.

References initImpactParameters().

79  :
80  Lepton<reco::GsfElectron>(anElectronRef),
82  embeddedGsfTrack_(false),
83  embeddedSuperCluster_(false),
85  embeddedTrack_(false),
86  embeddedSeedCluster_(false),
87  embeddedRecHits_(false),
88  embeddedPFCandidate_(false),
89  ecalDrivenMomentum_(anElectronRef->p4()),
90  cachedDB_(false),
91  dB_(0.0),
92  edB_(0.0)
93 {
95 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
bool embeddedRecHits_
True if RecHits stored internally.
Definition: Electron.h:274
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
void initImpactParameters()
init impact parameter defaults (for use in a constructor)
Definition: Electron.cc:120
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
Electron::~Electron ( )
virtual

destructor

Definition at line 98 of file Electron.cc.

98  {
99 }

Member Function Documentation

const std::vector<reco::CaloCluster>& pat::Electron::basicClusters ( ) const
inline

Definition at line 87 of file Electron.h.

References basicClusters_.

Referenced by SuperClusterHelper::SuperClusterHelper().

87 { return basicClusters_ ; }
std::vector< reco::CaloCluster > basicClusters_
Place to store electron&#39;s basic clusters internally.
Definition: Electron.h:256
float pat::Electron::caloIso ( ) const
inline

Overload of pat::Lepton::caloIso(); returns the sum of ecalIso() and hcalIso.

Definition at line 154 of file Electron.h.

References ecalIso(), and hcalIso().

154 { return ecalIso()+hcalIso(); }
float ecalIso() const
Overload of pat::Lepton::ecalIso(); returns the value of the summed Et of all recHits in the ecal in ...
Definition: Electron.h:150
float hcalIso() const
Overload of pat::Lepton::hcalIso(); returns the value of the summed Et of all caloTowers in the hcal ...
Definition: Electron.h:152
virtual Electron* pat::Electron::clone ( void  ) const
inlinevirtual

required reimplementation of the Candidate's clone method

Reimplemented from pat::Lepton< reco::GsfElectron >.

Definition at line 68 of file Electron.h.

References Electron().

68 { return new Electron(*this); }
Electron()
default constructor
Definition: Electron.cc:12
reco::TrackRef Electron::closestCtfTrackRef ( ) const

override the reco::GsfElectron::closestCtfTrackRef method, to access the internal storage of the track

override the reco::GsfElectron::closestCtfTrack method, to access the internal storage of the track

Definition at line 176 of file Electron.cc.

References reco::GsfElectron::closestCtfTrackRef(), embeddedTrack_, and track_.

Referenced by WenuPlots::analyze(), and EGammaMvaEleEstimator::mvaValue().

176  {
177  if (embeddedTrack_) {
178  return reco::TrackRef(&track_, 0);
179  } else {
181  }
182 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
std::vector< reco::Track > track_
Place to store electron&#39;s track internally.
Definition: Electron.h:268
TrackRef closestCtfTrackRef() const
Definition: GsfElectron.h:185
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
Definition: TrackFwd.h:14
reco::GsfElectronCoreRef Electron::core ( ) const
virtual

override the virtual reco::GsfElectron::core method, so that the embedded core can be used by GsfElectron client methods

Reimplemented from reco::GsfElectron.

Definition at line 139 of file Electron.cc.

References reco::GsfElectron::core(), embeddedGsfElectronCore_, and gsfElectronCore_.

139  {
142  } else {
143  return reco::GsfElectron::core();
144  }
145 }
edm::Ref< GsfElectronCoreCollection > GsfElectronCoreRef
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
std::vector< reco::GsfElectronCore > gsfElectronCore_
Place to store electron&#39;s gsfElectronCore internally.
Definition: Electron.h:244
virtual GsfElectronCoreRef core() const
Definition: GsfElectron.cc:8
double Electron::dB ( IpType  type_ = None) const

Impact parameter wrt primary vertex or beamspot.

dB gives the impact parameter wrt the beamline. If this is not cached it is not meaningful, since it relies on the distance to the beamline.

IpType defines the type of the impact parameter None is default and reverts to the old functionality.

Example: electron->dB(pat::Electron::PV2D) will return the electron transverse impact parameter relative to the primary vertex.

Definition at line 377 of file Electron.cc.

References cachedDB_, cachedIP_, dB_, ip_, max(), and None.

Referenced by WenuPlots::analyze(), ElectronVPlusJetsIDSelectionFunctor::firstDataCuts(), EGammaMvaEleEstimator::mvaValue(), WenuPlots::ReturnCandVar(), ZeePlots::ReturnCandVar(), setDB(), and PFElectronSelector::spring11Cuts().

377  {
378  // preserve old functionality exactly
379  if (type_ == None){
380  if ( cachedDB_ ) {
381  return dB_;
382  } else {
384  }
385  }
386  // more IP types (new)
387  else if ( cachedIP_[type_] ) {
388  return ip_[type_];
389  } else {
391  }
392 }
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
const T & max(const T &a, const T &b)
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
std::vector< double > ip_
Impact parameter at the primary vertex,.
Definition: Electron.h:333
std::vector< bool > cachedIP_
True if the IP (former dB) has been cached.
Definition: Electron.h:331
const LorentzVector& pat::Electron::ecalDrivenMomentum ( ) const
inline

Definition at line 185 of file Electron.h.

References ecalDrivenMomentum_.

185 {return ecalDrivenMomentum_;}
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
float pat::Electron::ecalIso ( ) const
inline

Overload of pat::Lepton::ecalIso(); returns the value of the summed Et of all recHits in the ecal in a cone of deltaR<0.4.

Definition at line 150 of file Electron.h.

References reco::GsfElectron::dr04EcalRecHitSumEt().

Referenced by caloIso().

150 { return dr04EcalRecHitSumEt(); }
float dr04EcalRecHitSumEt() const
Definition: GsfElectron.h:448
double pat::Electron::ecalRegressionEnergy ( ) const
inline

additional regression variables regression1

Definition at line 207 of file Electron.h.

References ecalRegressionEnergy_.

207 { return ecalRegressionEnergy_;}
double ecalRegressionEnergy_
output of regression
Definition: Electron.h:310
double pat::Electron::ecalRegressionError ( ) const
inline

Definition at line 208 of file Electron.h.

References ecalRegressionError_.

208 { return ecalRegressionError_;}
double ecalRegressionError_
Definition: Electron.h:312
double pat::Electron::ecalRegressionScale ( ) const
inline

Definition at line 228 of file Electron.h.

References ecalRegressionScale_.

228 { return ecalRegressionScale_ ;}
double ecalRegressionScale_
Definition: Electron.h:319
double pat::Electron::ecalRegressionSmear ( ) const
inline

Definition at line 229 of file Electron.h.

References ecalRegressionSmear_.

229 { return ecalRegressionSmear_ ;}
double ecalRegressionSmear_
Definition: Electron.h:320
double pat::Electron::ecalScale ( ) const
inline

get scale corrections /smearings

Definition at line 226 of file Electron.h.

References ecalScale_.

226 { return ecalScale_ ;}
double ecalScale_
scale corrections and smearing applied or to be be applied. Initialized to -99999.
Definition: Electron.h:316
double pat::Electron::ecalSmear ( ) const
inline

Definition at line 227 of file Electron.h.

References ecalSmear_.

227 { return ecalSmear_;}
double ecalSmear_
Definition: Electron.h:317
double pat::Electron::ecalTrackRegressionEnergy ( ) const
inline

regression2

Definition at line 210 of file Electron.h.

References ecalTrackRegressionEnergy_.

210 { return ecalTrackRegressionEnergy_; }
double ecalTrackRegressionEnergy_
Definition: Electron.h:311
double pat::Electron::ecalTrackRegressionError ( ) const
inline

Definition at line 211 of file Electron.h.

References ecalTrackRegressionError_.

211 { return ecalTrackRegressionError_; }
double ecalTrackRegressionError_
Definition: Electron.h:313
double pat::Electron::ecalTrackRegressionScale ( ) const
inline

Definition at line 230 of file Electron.h.

References ecalTrackRegressionScale_.

230 { return ecalTrackRegressionScale_ ;}
double ecalTrackRegressionScale_
Definition: Electron.h:322
double pat::Electron::ecalTrackRegressionSmear ( ) const
inline

Definition at line 231 of file Electron.h.

References ecalTrackRegressionSmear_.

231 { return ecalTrackRegressionSmear_ ;}
double ecalTrackRegressionSmear_
Definition: Electron.h:323
double Electron::edB ( IpType  type_ = None) const

Uncertainty on the corresponding impact parameter.

edB gives the uncertainty on the impact parameter wrt the beamline. If this is not cached it is not meaningful, since it relies on the distance to the beamline.

IpType defines the type of the impact parameter None is default and reverts to the old functionality.

Example: electron->edB(pat::Electron::PV2D) will return the electron transverse impact parameter uncertainty relative to the primary vertex.

Definition at line 404 of file Electron.cc.

References cachedDB_, cachedIP_, edB_, eip_, max(), and None.

Referenced by ElectronVPlusJetsIDSelectionFunctor::firstDataCuts(), EGammaMvaEleEstimator::mvaValue(), and setDB().

404  {
405  // preserve old functionality exactly
406  if (type_ == None) {
407  if ( cachedDB_ ) {
408  return edB_;
409  } else {
411  }
412  }
413  // more IP types (new)
414  else if ( cachedIP_[type_] ) {
415  return eip_[type_];
416  } else {
418  }
419 
420 }
const T & max(const T &a, const T &b)
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
std::vector< bool > cachedIP_
True if the IP (former dB) has been cached.
Definition: Electron.h:331
std::vector< double > eip_
Impact parameter uncertainty as recommended by the tracking group.
Definition: Electron.h:335
float Electron::electronID ( const std::string &  name) const

Returns a specific electron ID associated to the pat::Electron given its name.

Returns a specific electron ID associated to the pat::Electron given its name For cut-based IDs, the value map has the following meaning: 0: fails, 1: passes electron ID only, 2: passes electron Isolation only, 3: passes electron ID and Isolation only, 4: passes conversion rejection, 5: passes conversion rejection and ID, 6: passes conversion rejection and Isolation, 7: passes the whole selection. For more details have a look at: https://twiki.cern.ch/twiki/bin/view/CMS/SimpleCutBasedEleID https://twiki.cern.ch/twiki/bin/view/CMS/SWGuideCategoryBasedElectronID Note: an exception is thrown if the specified ID is not available

Definition at line 314 of file Electron.cc.

References electronIDs_.

Referenced by WenuPlots::analyze(), WenuPlots::CheckCuts(), ZeePlots::CheckCuts1(), ZeePlots::CheckCuts2(), and PFElectronSelector::spring11Cuts().

314  {
315  for (std::vector<IdPair>::const_iterator it = electronIDs_.begin(), ed = electronIDs_.end(); it != ed; ++it) {
316  if (it->first == name) return it->second;
317  }
318  cms::Exception ex("Key not found");
319  ex << "pat::Electron: the ID " << name << " can't be found in this pat::Electron.\n";
320  ex << "The available IDs are: ";
321  for (std::vector<IdPair>::const_iterator it = electronIDs_.begin(), ed = electronIDs_.end(); it != ed; ++it) {
322  ex << "'" << it->first << "' ";
323  }
324  ex << ".\n";
325  throw ex;
326 }
std::vector< IdPair > electronIDs_
Electron IDs.
Definition: Electron.h:280
float pat::Electron::electronID ( const char *  name) const
inline

Definition at line 135 of file Electron.h.

References electronID(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by electronID().

135 { return electronID( std::string(name) );}
float electronID(const std::string &name) const
Returns a specific electron ID associated to the pat::Electron given its name.
Definition: Electron.cc:314
const std::vector<IdPair>& pat::Electron::electronIDs ( ) const
inline

Returns all the electron IDs in the form of <name,value> pairs. The 'default' ID is the first in the list.

Definition at line 142 of file Electron.h.

References electronIDs_.

142 { return electronIDs_; }
std::vector< IdPair > electronIDs_
Electron IDs.
Definition: Electron.h:280
void Electron::embedBasicClusters ( )

method to store the electron's basic clusters

Stores the electron's BasicCluster (reco::CaloCluster) internally.

Definition at line 236 of file Electron.cc.

References basicClusters_, and reco::GsfElectron::superCluster().

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

236  {
237  basicClusters_.clear();
238  if (reco::GsfElectron::superCluster().isNonnull()){
241  for(;itscl!=itsclE;++itscl){
242  basicClusters_.push_back( **itscl ) ;
243  }
244  }
245 }
std::vector< reco::CaloCluster > basicClusters_
Place to store electron&#39;s basic clusters internally.
Definition: Electron.h:256
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
void Electron::embedGsfElectronCore ( )

method to store the electron's core internally

Stores the electron's core (reco::GsfElectronCoreRef) internally.

Definition at line 190 of file Electron.cc.

References reco::GsfElectron::core(), embeddedGsfElectronCore_, and gsfElectronCore_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

190  {
191  gsfElectronCore_.clear();
192  if (reco::GsfElectron::core().isNonnull()) {
195  }
196 }
bool embeddedGsfElectronCore_
True if electron&#39;s gsfElectronCore is stored internally.
Definition: Electron.h:242
std::vector< reco::GsfElectronCore > gsfElectronCore_
Place to store electron&#39;s gsfElectronCore internally.
Definition: Electron.h:244
virtual GsfElectronCoreRef core() const
Definition: GsfElectron.cc:8
void Electron::embedGsfTrack ( )

method to store the electron's GsfTrack internally

Stores the electron's gsfTrack (reco::GsfTrackRef) internally.

Definition at line 199 of file Electron.cc.

References embeddedGsfTrack_, reco::GsfElectron::gsfTrack(), and gsfTrack_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

199  {
200  gsfTrack_.clear();
201  if (reco::GsfElectron::gsfTrack().isNonnull()) {
203  embeddedGsfTrack_ = true;
204  }
205 }
std::vector< reco::GsfTrack > gsfTrack_
Place to store electron&#39;s gsfTrack internally.
Definition: Electron.h:248
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
virtual GsfTrackRef gsfTrack() const
reference to a GsfTrack
Definition: GsfElectron.h:169
void Electron::embedPFCandidate ( )

embed the PFCandidate pointed to by pfCandidateRef_

Stores the PFCandidate pointed to by pfCandidateRef_ internally.

Definition at line 347 of file Electron.cc.

References embeddedPFCandidate_, edm::Ref< C, T, F >::isAvailable(), edm::Ref< C, T, F >::isNonnull(), pfCandidate_, and pfCandidateRef_.

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

347  {
348  pfCandidate_.clear();
350  pfCandidate_.push_back( *pfCandidateRef_ );
351  embeddedPFCandidate_ = true;
352  }
353 }
bool isAvailable() const
Definition: Ref.h:276
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:250
reco::PFCandidateCollection pfCandidate_
A copy of the source IsolatedPFCandidate is stored in this vector if embeddedPFCandidate_ if True...
Definition: Electron.h:287
reco::PFCandidateRef pfCandidateRef_
reference to the IsolatedPFCandidate this has been built from; null if this has been built from a sta...
Definition: Electron.h:289
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
void Electron::embedPflowBasicClusters ( )

method to store the electron's pflow basic clusters

Stores the electron's PflowBasicCluster (reco::CaloCluster) internally.

Definition at line 260 of file Electron.cc.

References reco::GsfElectron::parentSuperCluster(), and pflowBasicClusters_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

260  {
261  pflowBasicClusters_.clear();
262  if (reco::GsfElectron::parentSuperCluster().isNonnull()){
265  for(;itscl!=itsclE;++itscl){
266  pflowBasicClusters_.push_back( **itscl ) ;
267  }
268  }
269 }
SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:174
std::vector< reco::CaloCluster > pflowBasicClusters_
Place to store electron&#39;s pflow basic clusters internally.
Definition: Electron.h:260
void Electron::embedPflowPreshowerClusters ( )

method to store the electron's pflow preshower clusters

Stores the electron's PflowPreshowerCluster (reco::CaloCluster) internally.

Definition at line 272 of file Electron.cc.

References reco::GsfElectron::parentSuperCluster(), and pflowPreshowerClusters_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

272  {
273  pflowPreshowerClusters_.clear();
274  if (reco::GsfElectron::parentSuperCluster().isNonnull()){
275  reco::CaloCluster_iterator itscl = reco::GsfElectron::parentSuperCluster()->preshowerClustersBegin();
276  reco::CaloCluster_iterator itsclE = reco::GsfElectron::parentSuperCluster()->preshowerClustersEnd();
277  for(;itscl!=itsclE;++itscl){
278  pflowPreshowerClusters_.push_back( **itscl ) ;
279  }
280  }
281 }
SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:174
std::vector< reco::CaloCluster > pflowPreshowerClusters_
Place to store electron&#39;s pflow preshower clusters internally.
Definition: Electron.h:262
void Electron::embedPflowSuperCluster ( )

method to store the electron's PflowSuperCluster internally

Stores the electron's SuperCluster (reco::SuperClusterRef) internally.

Definition at line 218 of file Electron.cc.

References embeddedPflowSuperCluster_, reco::GsfElectron::parentSuperCluster(), and pflowSuperCluster_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

218  {
219  pflowSuperCluster_.clear();
220  if (reco::GsfElectron::parentSuperCluster().isNonnull()) {
223  }
224 }
SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:174
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
std::vector< reco::SuperCluster > pflowSuperCluster_
Place to store electron&#39;s pflow supercluster internally.
Definition: Electron.h:264
void Electron::embedPreshowerClusters ( )

method to store the electron's preshower clusters

Stores the electron's PreshowerCluster (reco::CaloCluster) internally.

Definition at line 248 of file Electron.cc.

References preshowerClusters_, and reco::GsfElectron::superCluster().

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

248  {
249  preshowerClusters_.clear();
250  if (reco::GsfElectron::superCluster().isNonnull()){
251  reco::CaloCluster_iterator itscl = reco::GsfElectron::superCluster()->preshowerClustersBegin();
252  reco::CaloCluster_iterator itsclE = reco::GsfElectron::superCluster()->preshowerClustersEnd();
253  for(;itscl!=itsclE;++itscl){
254  preshowerClusters_.push_back( **itscl ) ;
255  }
256  }
257 }
std::vector< reco::CaloCluster > preshowerClusters_
Place to store electron&#39;s preshower clusters internally.
Definition: Electron.h:258
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
void Electron::embedRecHits ( const EcalRecHitCollection rechits)

method to store the RecHits internally - can be called from the PATElectronProducer

Definition at line 293 of file Electron.cc.

References embeddedRecHits_, HI_PhotonSkim_cff::rechits, and recHits_.

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

293  {
294  if (rechits!=0) {
295  recHits_ = *rechits;
296  embeddedRecHits_ = true;
297  }
298 }
bool embeddedRecHits_
True if RecHits stored internally.
Definition: Electron.h:274
EcalRecHitCollection recHits_
Place to store electron&#39;s RecHits internally (5x5 around seed+ all RecHits)
Definition: Electron.h:276
void Electron::embedSeedCluster ( )

method to store the electron's seedcluster internally

Stores the electron's SeedCluster (reco::BasicClusterPtr) internally.

Definition at line 227 of file Electron.cc.

References embeddedSeedCluster_, seed(), seedCluster_, and reco::GsfElectron::superCluster().

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

227  {
228  seedCluster_.clear();
229  if (reco::GsfElectron::superCluster().isNonnull() && reco::GsfElectron::superCluster()->seed().isNonnull()) {
231  embeddedSeedCluster_ = true;
232  }
233 }
reco::CaloClusterPtr seed() const
direct access to the seed cluster
Definition: Electron.cc:167
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
std::vector< reco::CaloCluster > seedCluster_
Place to store electron&#39;s seed cluster internally.
Definition: Electron.h:272
void Electron::embedSuperCluster ( )

method to store the electron's SuperCluster internally

Stores the electron's SuperCluster (reco::SuperClusterRef) internally.

Definition at line 209 of file Electron.cc.

References embeddedSuperCluster_, reco::GsfElectron::superCluster(), and superCluster_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

209  {
210  superCluster_.clear();
211  if (reco::GsfElectron::superCluster().isNonnull()) {
213  embeddedSuperCluster_ = true;
214  }
215 }
std::vector< reco::SuperCluster > superCluster_
Place to store electron&#39;s supercluster internally.
Definition: Electron.h:254
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
void Electron::embedTrack ( )

method to store the electron's Track internally

method to store the electron's track internally

Definition at line 284 of file Electron.cc.

References reco::GsfElectron::closestCtfTrackRef(), embeddedTrack_, and track_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

284  {
285  track_.clear();
286  if (reco::GsfElectron::closestCtfTrackRef().isNonnull()) {
288  embeddedTrack_ = true;
289  }
290 }
bool embeddedTrack_
True if electron&#39;s track is stored internally.
Definition: Electron.h:266
std::vector< reco::Track > track_
Place to store electron&#39;s track internally.
Definition: Electron.h:268
TrackRef closestCtfTrackRef() const
Definition: GsfElectron.h:185
reco::GsfTrackRef Electron::gsfTrack ( ) const
virtual

override the reco::GsfElectron::gsfTrack method, to access the internal storage of the supercluster

Reimplemented from reco::GsfElectron.

Definition at line 130 of file Electron.cc.

References embeddedGsfTrack_, reco::GsfElectron::gsfTrack(), and gsfTrack_.

Referenced by WenuPlots::analyze(), pat::TrackerIsolationPt::calculate(), pat::CaloIsolationEnergy::calculate(), pat::LeptonVertexSignificance::calculate(), EGammaMvaEleEstimator::mvaValue(), SimpleCutBasedElectronIDSelectionFunctor::spring10Variables(), and PFElectronSelector::spring11Cuts().

130  {
131  if (embeddedGsfTrack_) {
132  return reco::GsfTrackRef(&gsfTrack_, 0);
133  } else {
135  }
136 }
edm::Ref< GsfTrackCollection > GsfTrackRef
persistent reference to a GsfTrack
Definition: GsfTrackFwd.h:13
std::vector< reco::GsfTrack > gsfTrack_
Place to store electron&#39;s gsfTrack internally.
Definition: Electron.h:248
bool embeddedGsfTrack_
True if electron&#39;s gsfTrack is stored internally.
Definition: Electron.h:246
virtual GsfTrackRef gsfTrack() const
reference to a GsfTrack
Definition: GsfElectron.h:169
float pat::Electron::hcalIso ( ) const
inline

Overload of pat::Lepton::hcalIso(); returns the value of the summed Et of all caloTowers in the hcal in a cone of deltaR<0.4.

Definition at line 152 of file Electron.h.

References reco::GsfElectron::dr04HcalTowerSumEt().

Referenced by caloIso().

152 { return dr04HcalTowerSumEt(); }
float dr04HcalTowerSumEt() const
Definition: GsfElectron.h:451
void Electron::initImpactParameters ( )
protected

init impact parameter defaults (for use in a constructor)

initializes the impact parameter container vars

Definition at line 120 of file Electron.cc.

References cachedIP_, eip_, and ip_.

Referenced by Electron().

120  {
121  for (int i_ = 0; i_<5; ++i_){
122  ip_.push_back(0.0);
123  eip_.push_back(0.0);
124  cachedIP_.push_back(false);
125  }
126 }
std::vector< double > ip_
Impact parameter at the primary vertex,.
Definition: Electron.h:333
std::vector< bool > cachedIP_
True if the IP (former dB) has been cached.
Definition: Electron.h:331
std::vector< double > eip_
Impact parameter uncertainty as recommended by the tracking group.
Definition: Electron.h:335
double pat::Electron::ip3d ( ) const
inline

ip3d

Definition at line 199 of file Electron.h.

References ip3d_.

Referenced by setMvaVariables().

199 { return ip3d_; }
double ip3d_
Definition: Electron.h:307
bool Electron::isElectronIDAvailable ( const std::string &  name) const

Returns true if a specific ID is available in this pat::Electron.

Checks if a specific electron ID is associated to the pat::Electron.

Definition at line 329 of file Electron.cc.

References electronIDs_.

Referenced by WenuPlots::analyze(), and isElectronIDAvailable().

329  {
330  for (std::vector<IdPair>::const_iterator it = electronIDs_.begin(), ed = electronIDs_.end(); it != ed; ++it) {
331  if (it->first == name) return true;
332  }
333  return false;
334 }
std::vector< IdPair > electronIDs_
Electron IDs.
Definition: Electron.h:280
bool pat::Electron::isElectronIDAvailable ( const char *  name) const
inline

Definition at line 138 of file Electron.h.

References isElectronIDAvailable(), and AlCaHLTBitMon_QueryRunRegistry::string.

138  {
140  }
bool isElectronIDAvailable(const std::string &name) const
Returns true if a specific ID is available in this pat::Electron.
Definition: Electron.cc:329
bool pat::Electron::isPF ( ) const
inline

Definition at line 157 of file Electron.h.

References isPF_.

157 { return isPF_; }
size_t pat::Electron::numberOfSourceCandidatePtrs ( ) const
inlinevirtual

get the number of non-null PFCandidates

Reimplemented from reco::LeafCandidate.

Definition at line 169 of file Electron.h.

References edm::Ref< C, T, F >::isNonnull(), and pfCandidateRef_.

169  {
170  return pfCandidateRef_.isNonnull() ? 1 : 0;
171  }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:250
reco::PFCandidateRef pfCandidateRef_
reference to the IsolatedPFCandidate this has been built from; null if this has been built from a sta...
Definition: Electron.h:289
reco::SuperClusterRef Electron::parentSuperCluster ( ) const

override the reco::GsfElectron::pflowSuperCluster method, to access the internal storage of the pflowSuperCluster

override the reco::GsfElectron::pflowSuperCluster method, to access the internal storage of the supercluster

Definition at line 158 of file Electron.cc.

References embeddedPflowSuperCluster_, reco::GsfElectron::parentSuperCluster(), and pflowSuperCluster_.

158  {
161  } else {
163  }
164 }
SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:174
edm::Ref< SuperClusterCollection > SuperClusterRef
reference to an object in a collection of SuperCluster objects
bool embeddedPflowSuperCluster_
True if electron&#39;s pflowsupercluster is stored internally.
Definition: Electron.h:252
std::vector< reco::SuperCluster > pflowSuperCluster_
Place to store electron&#39;s pflow supercluster internally.
Definition: Electron.h:264
bool pat::Electron::passConversionVeto ( ) const
inline

vertex fit combined with missing number of hits method

Definition at line 233 of file Electron.h.

References passConversionVeto_.

233 { return passConversionVeto_; }
bool passConversionVeto_
conversion veto
Definition: Electron.h:327
reco::PFCandidateRef Electron::pfCandidateRef ( ) const

reference to the source PFCandidates; null if this has been built from a standard electron

reference to the source PFCandidates

Definition at line 338 of file Electron.cc.

References embeddedPFCandidate_, pfCandidate_, and pfCandidateRef_.

Referenced by pat::PATElectronProducer::fillElectron(), and pat::PATElectronProducer::fillElectron2().

338  {
339  if (embeddedPFCandidate_) {
341  } else {
342  return pfCandidateRef_;
343  }
344 }
edm::Ref< PFCandidateCollection > PFCandidateRef
persistent reference to a PFCandidate
reco::PFCandidateCollection pfCandidate_
A copy of the source IsolatedPFCandidate is stored in this vector if embeddedPFCandidate_ if True...
Definition: Electron.h:287
reco::PFCandidateRef pfCandidateRef_
reference to the IsolatedPFCandidate this has been built from; null if this has been built from a sta...
Definition: Electron.h:289
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
const std::vector<reco::CaloCluster>& pat::Electron::pflowBasicClusters ( ) const
inline

Definition at line 91 of file Electron.h.

References pflowBasicClusters_.

91 { return pflowBasicClusters_ ; }
std::vector< reco::CaloCluster > pflowBasicClusters_
Place to store electron&#39;s pflow basic clusters internally.
Definition: Electron.h:260
const std::vector<reco::CaloCluster>& pat::Electron::pflowPreshowerClusters ( ) const
inline

Definition at line 93 of file Electron.h.

References pflowPreshowerClusters_.

93 { return pflowPreshowerClusters_ ; }
std::vector< reco::CaloCluster > pflowPreshowerClusters_
Place to store electron&#39;s pflow preshower clusters internally.
Definition: Electron.h:262
const std::vector<reco::CaloCluster>& pat::Electron::preshowerClusters ( ) const
inline

Definition at line 89 of file Electron.h.

References preshowerClusters_.

Referenced by SuperClusterHelper::SuperClusterHelper().

89 { return preshowerClusters_ ; }
std::vector< reco::CaloCluster > preshowerClusters_
Place to store electron&#39;s preshower clusters internally.
Definition: Electron.h:258
double pat::Electron::r9 ( ) const
inline

additional mva input variables R9 variable

Definition at line 193 of file Electron.h.

References r9_.

Referenced by EGammaMvaEleEstimator::mvaValue(), and setMvaVariables().

193 { return r9_; };
double r9_
additional missing mva variables : 14/04/2012
Definition: Electron.h:304
const EcalRecHitCollection* pat::Electron::recHits ( void  ) const
inline

Definition at line 203 of file Electron.h.

References recHits_.

203 { return &recHits_;}
EcalRecHitCollection recHits_
Place to store electron&#39;s RecHits internally (5x5 around seed+ all RecHits)
Definition: Electron.h:276
reco::CaloClusterPtr Electron::seed ( ) const

direct access to the seed cluster

Definition at line 167 of file Electron.cc.

References embeddedSeedCluster_, seedCluster_, and reco::GsfElectron::superCluster().

Referenced by embedSeedCluster(), and SuperClusterHelper::SuperClusterHelper().

167  {
170  } else {
171  return reco::GsfElectron::superCluster()->seed();
172  }
173 }
edm::Ptr< CaloCluster > CaloClusterPtr
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
bool embeddedSeedCluster_
True if seed cluster is stored internally.
Definition: Electron.h:270
std::vector< reco::CaloCluster > seedCluster_
Place to store electron&#39;s seed cluster internally.
Definition: Electron.h:272
void Electron::setDB ( double  dB,
double  edB,
IpType  type = None 
)

Set impact parameter of a certain type and its uncertainty.

Sets the impact parameter and its error wrt the beamline and caches it.

Definition at line 423 of file Electron.cc.

References cachedDB_, cachedIP_, dB(), dB_, edB(), edB_, eip_, ip_, and None.

Referenced by pat::PATElectronProducer::embedHighLevel(), and pat::PATElectronProducer::produce().

423  {
424  if (type == None) { // Preserve old functionality exactly
425  dB_ = dB; edB_ = edB;
426  cachedDB_ = true;
427  } else {
428  ip_[type] = dB;
429  eip_[type] = edB;
430  cachedIP_[type] = true;
431  }
432 }
double edB(IpType type=None) const
Uncertainty on the corresponding impact parameter.
Definition: Electron.cc:404
type
Definition: HCALResponse.h:21
double dB_
Impact parameter at the primary vertex.
Definition: Electron.h:299
double edB_
Impact paramater uncertainty at the primary vertex.
Definition: Electron.h:301
bool cachedDB_
True if impact parameter has been cached.
Definition: Electron.h:297
std::vector< double > ip_
Impact parameter at the primary vertex,.
Definition: Electron.h:333
std::vector< bool > cachedIP_
True if the IP (former dB) has been cached.
Definition: Electron.h:331
double dB(IpType type=None) const
Impact parameter wrt primary vertex or beamspot.
Definition: Electron.cc:377
std::vector< double > eip_
Impact parameter uncertainty as recommended by the tracking group.
Definition: Electron.h:335
void pat::Electron::setEcalDrivenMomentum ( const Candidate::LorentzVector mom)
inline

Definition at line 186 of file Electron.h.

References ecalDrivenMomentum_.

Referenced by pat::PATElectronProducer::fillElectron2().

186 {ecalDrivenMomentum_=mom;}
LorentzVector ecalDrivenMomentum_
ECAL-driven momentum.
Definition: Electron.h:293
void pat::Electron::setEcalRegressionEnergy ( double  val,
double  err 
)
inline

set regression1

Definition at line 213 of file Electron.h.

References ecalRegressionEnergy_, and ecalRegressionError_.

Referenced by RegressionEnergyPatElectronProducer::produce().

double ecalRegressionEnergy_
output of regression
Definition: Electron.h:310
double ecalRegressionError_
Definition: Electron.h:312
void pat::Electron::setEcalRegressionScale ( double  val)
inline

Definition at line 220 of file Electron.h.

References ecalRegressionScale_.

220 { ecalRegressionScale_ = val ;}
double ecalRegressionScale_
Definition: Electron.h:319
void pat::Electron::setEcalRegressionSmear ( double  val)
inline

Definition at line 221 of file Electron.h.

References ecalRegressionSmear_.

221 { ecalRegressionSmear_ = val;}
double ecalRegressionSmear_
Definition: Electron.h:320
void pat::Electron::setEcalScale ( double  val)
inline

set scale corrections / smearings

Definition at line 218 of file Electron.h.

References ecalScale_.

218 { ecalScale_= val ;}
double ecalScale_
scale corrections and smearing applied or to be be applied. Initialized to -99999.
Definition: Electron.h:316
void pat::Electron::setEcalSmear ( double  val)
inline

Definition at line 219 of file Electron.h.

References ecalSmear_.

219 { ecalSmear_= val;}
double ecalSmear_
Definition: Electron.h:317
void pat::Electron::setEcalTrackRegressionEnergy ( double  val,
double  err 
)
inline

set regression2

Definition at line 215 of file Electron.h.

References ecalTrackRegressionEnergy_, and ecalTrackRegressionError_.

double ecalTrackRegressionError_
Definition: Electron.h:313
double ecalTrackRegressionEnergy_
Definition: Electron.h:311
void pat::Electron::setEcalTrackRegressionScale ( double  val)
inline

Definition at line 222 of file Electron.h.

References ecalTrackRegressionScale_.

double ecalTrackRegressionScale_
Definition: Electron.h:322
void pat::Electron::setEcalTrackRegressionSmear ( double  val)
inline

Definition at line 223 of file Electron.h.

References ecalTrackRegressionSmear_.

double ecalTrackRegressionSmear_
Definition: Electron.h:323
void pat::Electron::setElectronIDs ( const std::vector< IdPair > &  ids)
inline

Store multiple electron ID values, discarding existing ones. The first one in the list becomes the 'default' electron id.

Definition at line 144 of file Electron.h.

References electronIDs_.

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

144 { electronIDs_ = ids; }
std::vector< IdPair > electronIDs_
Electron IDs.
Definition: Electron.h:280
void pat::Electron::setIsPF ( bool  hasPFCandidate)
inline

Definition at line 158 of file Electron.h.

References isPF_.

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

158 { isPF_ = hasPFCandidate ; }
void Electron::setMvaVariables ( double  r9,
double  sigmaIphiIphi,
double  sigmaIetaIphi,
double  ip3d 
)

set missing mva input variables

Set additional missing mva input variables for new mva ID : 14/04/2012.

Definition at line 435 of file Electron.cc.

References ip3d(), ip3d_, r9(), r9_, sigmaIetaIphi(), sigmaIetaIphi_, sigmaIphiIphi(), and sigmaIphiIphi_.

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

435  {
436  r9_ = r9;
439  ip3d_ = ip3d;
440 }
double ip3d() const
ip3d
Definition: Electron.h:199
double sigmaIetaIphi() const
sigmaIEtaIPhi
Definition: Electron.h:197
double r9_
additional missing mva variables : 14/04/2012
Definition: Electron.h:304
double ip3d_
Definition: Electron.h:307
double r9() const
Definition: Electron.h:193
double sigmaIphiIphi_
Definition: Electron.h:305
double sigmaIphiIphi() const
sigmaIPhiPhi
Definition: Electron.h:195
double sigmaIetaIphi_
Definition: Electron.h:306
void pat::Electron::setPassConversionVeto ( bool  flag)
inline

Definition at line 234 of file Electron.h.

References passConversionVeto_.

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

234 { passConversionVeto_ = flag; }
bool passConversionVeto_
conversion veto
Definition: Electron.h:327
void pat::Electron::setPFCandidateRef ( const reco::PFCandidateRef ref)
inline

add a reference to the source IsolatedPFCandidate

Definition at line 163 of file Electron.h.

References pfCandidateRef_.

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

163  {
164  pfCandidateRef_ = ref;
165  }
reco::PFCandidateRef pfCandidateRef_
reference to the IsolatedPFCandidate this has been built from; null if this has been built from a sta...
Definition: Electron.h:289
double pat::Electron::sigmaIetaIphi ( ) const
inline

sigmaIEtaIPhi

Definition at line 197 of file Electron.h.

References sigmaIetaIphi_.

Referenced by setMvaVariables().

197 { return sigmaIetaIphi_; };
double sigmaIetaIphi_
Definition: Electron.h:306
double pat::Electron::sigmaIphiIphi ( ) const
inline

sigmaIPhiPhi

Definition at line 195 of file Electron.h.

References sigmaIphiIphi_.

Referenced by EGammaMvaEleEstimator::mvaValue(), and setMvaVariables().

195 { return sigmaIphiIphi_; };
double sigmaIphiIphi_
Definition: Electron.h:305
reco::CandidatePtr Electron::sourceCandidatePtr ( size_type  i) const
virtual

get the source candidate pointer with index i

Returns the reference to the parent PF candidate with index i. For use in TopProjector.

Reimplemented from reco::LeafCandidate.

Definition at line 357 of file Electron.cc.

References embeddedPFCandidate_, edm::Ref< C, T, F >::get(), edm::Ref< C, T, F >::id(), edm::Ref< C, T, F >::key(), and pfCandidateRef_.

357  {
358  if (embeddedPFCandidate_) {
360  } else {
361  return reco::CandidatePtr();
362  }
363 }
edm::Ptr< Candidate > CandidatePtr
persistent reference to an object in a collection of Candidate objects
Definition: CandidateFwd.h:25
key_type key() const
Accessor for product key.
Definition: Ref.h:266
reco::PFCandidateRef pfCandidateRef_
reference to the IsolatedPFCandidate this has been built from; null if this has been built from a sta...
Definition: Electron.h:289
ProductID id() const
Accessor for product ID.
Definition: Ref.h:256
T const * get() const
Returns C++ pointer to the item.
Definition: Ref.h:242
bool embeddedPFCandidate_
true if the IsolatedPFCandidate is embedded
Definition: Electron.h:285
reco::SuperClusterRef Electron::superCluster ( ) const
virtual

override the reco::GsfElectron::superCluster method, to access the internal storage of the supercluster

Reimplemented from reco::GsfElectron.

Definition at line 149 of file Electron.cc.

References embeddedSuperCluster_, reco::GsfElectron::superCluster(), and superCluster_.

Referenced by WenuPlots::analyze(), WenuPlots::CheckCut(), ZeePlots::CheckCut1(), ZeePlots::CheckCut1Inv(), ZeePlots::CheckCut2(), ZeePlots::CheckCut2Inv(), WenuPlots::CheckCutInv(), hitfit::LeptonTranslatorBase< ALepton >::CheckEta(), EGammaMvaEleEstimator::mvaValue(), hitfit::LeptonTranslatorBase< ALepton >::operator()(), and SuperClusterHelper::SuperClusterHelper().

149  {
150  if (embeddedSuperCluster_) {
152  } else {
154  }
155 }
std::vector< reco::SuperCluster > superCluster_
Place to store electron&#39;s supercluster internally.
Definition: Electron.h:254
edm::Ref< SuperClusterCollection > SuperClusterRef
reference to an object in a collection of SuperCluster objects
virtual SuperClusterRef superCluster() const
reference to a SuperCluster
Definition: GsfElectron.h:168
bool embeddedSuperCluster_
True if electron&#39;s supercluster is stored internally.
Definition: Electron.h:250
reco::TrackRef Electron::track ( void  ) const
virtual

returns nothing. Use either gsfTrack or closestCtfTrack

Reimplemented from reco::RecoCandidate.

Definition at line 185 of file Electron.cc.

185  {
186  return reco::TrackRef();
187 }
edm::Ref< TrackCollection > TrackRef
persistent reference to a Track
Definition: TrackFwd.h:14
float pat::Electron::trackIso ( ) const
inline

Overload of pat::Lepton::trackIso(); returns the value of the summed track pt in a cone of deltaR<0.4.

Definition at line 148 of file Electron.h.

References reco::GsfElectron::dr04TkSumPt().

148 { return dr04TkSumPt(); }
float dr04TkSumPt() const
Definition: GsfElectron.h:447

Friends And Related Function Documentation

std::ostream& reco::operator<< ( std::ostream &  out,
const pat::Electron obj 
)
friend

pipe operator (introduced to use pat::Electron with PFTopProjectors)

Member Data Documentation

std::vector<reco::CaloCluster> pat::Electron::basicClusters_
protected

Place to store electron's basic clusters internally.

Definition at line 256 of file Electron.h.

Referenced by basicClusters(), and embedBasicClusters().

bool pat::Electron::cachedDB_
protected

True if impact parameter has been cached.

Definition at line 297 of file Electron.h.

Referenced by dB(), edB(), and setDB().

std::vector<bool> pat::Electron::cachedIP_
protected

True if the IP (former dB) has been cached.

Definition at line 331 of file Electron.h.

Referenced by dB(), edB(), initImpactParameters(), and setDB().

double pat::Electron::dB_
protected

Impact parameter at the primary vertex.

Definition at line 299 of file Electron.h.

Referenced by dB(), and setDB().

LorentzVector pat::Electron::ecalDrivenMomentum_
protected

ECAL-driven momentum.

Definition at line 293 of file Electron.h.

Referenced by ecalDrivenMomentum(), and setEcalDrivenMomentum().

double pat::Electron::ecalRegressionEnergy_
protected

output of regression

Definition at line 310 of file Electron.h.

Referenced by ecalRegressionEnergy(), and setEcalRegressionEnergy().

double pat::Electron::ecalRegressionError_
protected

Definition at line 312 of file Electron.h.

Referenced by ecalRegressionError(), and setEcalRegressionEnergy().

double pat::Electron::ecalRegressionScale_
protected

Definition at line 319 of file Electron.h.

Referenced by ecalRegressionScale(), and setEcalRegressionScale().

double pat::Electron::ecalRegressionSmear_
protected

Definition at line 320 of file Electron.h.

Referenced by ecalRegressionSmear(), and setEcalRegressionSmear().

double pat::Electron::ecalScale_
protected

scale corrections and smearing applied or to be be applied. Initialized to -99999.

Definition at line 316 of file Electron.h.

Referenced by ecalScale(), and setEcalScale().

double pat::Electron::ecalSmear_
protected

Definition at line 317 of file Electron.h.

Referenced by ecalSmear(), and setEcalSmear().

double pat::Electron::ecalTrackRegressionEnergy_
protected

Definition at line 311 of file Electron.h.

Referenced by ecalTrackRegressionEnergy(), and setEcalTrackRegressionEnergy().

double pat::Electron::ecalTrackRegressionError_
protected

Definition at line 313 of file Electron.h.

Referenced by ecalTrackRegressionError(), and setEcalTrackRegressionEnergy().

double pat::Electron::ecalTrackRegressionScale_
protected

Definition at line 322 of file Electron.h.

Referenced by ecalTrackRegressionScale(), and setEcalTrackRegressionScale().

double pat::Electron::ecalTrackRegressionSmear_
protected

Definition at line 323 of file Electron.h.

Referenced by ecalTrackRegressionSmear(), and setEcalTrackRegressionSmear().

double pat::Electron::edB_
protected

Impact paramater uncertainty at the primary vertex.

Definition at line 301 of file Electron.h.

Referenced by edB(), and setDB().

std::vector<double> pat::Electron::eip_
protected

Impact parameter uncertainty as recommended by the tracking group.

Definition at line 335 of file Electron.h.

Referenced by edB(), initImpactParameters(), and setDB().

std::vector<IdPair> pat::Electron::electronIDs_
protected

Electron IDs.

Definition at line 280 of file Electron.h.

Referenced by electronID(), electronIDs(), isElectronIDAvailable(), and setElectronIDs().

bool pat::Electron::embeddedGsfElectronCore_
protected

True if electron's gsfElectronCore is stored internally.

Definition at line 242 of file Electron.h.

Referenced by core(), and embedGsfElectronCore().

bool pat::Electron::embeddedGsfTrack_
protected

True if electron's gsfTrack is stored internally.

Definition at line 246 of file Electron.h.

Referenced by embedGsfTrack(), and gsfTrack().

bool pat::Electron::embeddedPFCandidate_
protected

true if the IsolatedPFCandidate is embedded

Definition at line 285 of file Electron.h.

Referenced by embedPFCandidate(), pfCandidateRef(), and sourceCandidatePtr().

bool pat::Electron::embeddedPflowSuperCluster_
protected

True if electron's pflowsupercluster is stored internally.

Definition at line 252 of file Electron.h.

Referenced by embedPflowSuperCluster(), and parentSuperCluster().

bool pat::Electron::embeddedRecHits_
protected

True if RecHits stored internally.

Definition at line 274 of file Electron.h.

Referenced by embedRecHits().

bool pat::Electron::embeddedSeedCluster_
protected

True if seed cluster is stored internally.

Definition at line 270 of file Electron.h.

Referenced by embedSeedCluster(), and seed().

bool pat::Electron::embeddedSuperCluster_
protected

True if electron's supercluster is stored internally.

Definition at line 250 of file Electron.h.

Referenced by embedSuperCluster(), and superCluster().

bool pat::Electron::embeddedTrack_
protected

True if electron's track is stored internally.

Definition at line 266 of file Electron.h.

Referenced by closestCtfTrackRef(), and embedTrack().

std::vector<reco::GsfElectronCore> pat::Electron::gsfElectronCore_
protected

Place to store electron's gsfElectronCore internally.

Definition at line 244 of file Electron.h.

Referenced by core(), and embedGsfElectronCore().

std::vector<reco::GsfTrack> pat::Electron::gsfTrack_
protected

Place to store electron's gsfTrack internally.

Definition at line 248 of file Electron.h.

Referenced by embedGsfTrack(), and gsfTrack().

double pat::Electron::ip3d_
protected

Definition at line 307 of file Electron.h.

Referenced by ip3d(), and setMvaVariables().

std::vector<double> pat::Electron::ip_
protected

Impact parameter at the primary vertex,.

Definition at line 333 of file Electron.h.

Referenced by dB(), initImpactParameters(), and setDB().

bool pat::Electron::isPF_
protected

Definition at line 283 of file Electron.h.

Referenced by isPF(), and setIsPF().

bool pat::Electron::passConversionVeto_
protected

conversion veto

Definition at line 327 of file Electron.h.

Referenced by passConversionVeto(), and setPassConversionVeto().

reco::PFCandidateCollection pat::Electron::pfCandidate_
protected

A copy of the source IsolatedPFCandidate is stored in this vector if embeddedPFCandidate_ if True.

Definition at line 287 of file Electron.h.

Referenced by embedPFCandidate(), and pfCandidateRef().

reco::PFCandidateRef pat::Electron::pfCandidateRef_
protected

reference to the IsolatedPFCandidate this has been built from; null if this has been built from a standard electron

Definition at line 289 of file Electron.h.

Referenced by embedPFCandidate(), numberOfSourceCandidatePtrs(), pfCandidateRef(), setPFCandidateRef(), and sourceCandidatePtr().

std::vector<reco::CaloCluster> pat::Electron::pflowBasicClusters_
protected

Place to store electron's pflow basic clusters internally.

Definition at line 260 of file Electron.h.

Referenced by embedPflowBasicClusters(), and pflowBasicClusters().

std::vector<reco::CaloCluster> pat::Electron::pflowPreshowerClusters_
protected

Place to store electron's pflow preshower clusters internally.

Definition at line 262 of file Electron.h.

Referenced by embedPflowPreshowerClusters(), and pflowPreshowerClusters().

std::vector<reco::SuperCluster> pat::Electron::pflowSuperCluster_
protected

Place to store electron's pflow supercluster internally.

Definition at line 264 of file Electron.h.

Referenced by embedPflowSuperCluster(), and parentSuperCluster().

std::vector<reco::CaloCluster> pat::Electron::preshowerClusters_
protected

Place to store electron's preshower clusters internally.

Definition at line 258 of file Electron.h.

Referenced by embedPreshowerClusters(), and preshowerClusters().

double pat::Electron::r9_
protected

additional missing mva variables : 14/04/2012

Definition at line 304 of file Electron.h.

Referenced by r9(), and setMvaVariables().

EcalRecHitCollection pat::Electron::recHits_
protected

Place to store electron's RecHits internally (5x5 around seed+ all RecHits)

Definition at line 276 of file Electron.h.

Referenced by embedRecHits(), and recHits().

std::vector<reco::CaloCluster> pat::Electron::seedCluster_
protected

Place to store electron's seed cluster internally.

Definition at line 272 of file Electron.h.

Referenced by embedSeedCluster(), and seed().

double pat::Electron::sigmaIetaIphi_
protected

Definition at line 306 of file Electron.h.

Referenced by setMvaVariables(), and sigmaIetaIphi().

double pat::Electron::sigmaIphiIphi_
protected

Definition at line 305 of file Electron.h.

Referenced by setMvaVariables(), and sigmaIphiIphi().

std::vector<reco::SuperCluster> pat::Electron::superCluster_
protected

Place to store electron's supercluster internally.

Definition at line 254 of file Electron.h.

Referenced by embedSuperCluster(), and superCluster().

std::vector<reco::Track> pat::Electron::track_
protected

Place to store electron's track internally.

Definition at line 268 of file Electron.h.

Referenced by closestCtfTrackRef(), and embedTrack().