CMS 3D CMS Logo

PFCandidateElectronExtra.h
Go to the documentation of this file.
1 #ifndef ParticleFlowCandidate_PFCandidateElectronExtra_h
2 #define ParticleFlowCandidate_PFCandidateElectronExtra_h
3 
7 
8 #include <iosfwd>
9 
10 namespace reco {
17  public:
18  enum StatusFlag {
19  X = 0, // undefined
20  Selected, // selected
21  ECALDrivenPreselected, // ECAL-driven electron pre-selected
22  MVASelected, // Passed the internal particle-flow selection (mva selection)
23  Rejected // Rejected
24  };
25 
26  // if you had a variable update NMvaVariables
27  enum MvaVariable {
28  MVA_FIRST = 0,
46  };
47 
48  public:
55 
57  void setGsfTrackRef(const reco::GsfTrackRef& ref);
58 
60  void setKfTrackRef(const reco::TrackRef& ref);
61 
64 
67 
69  void setLateBrem(float val);
71  void setEarlyBrem(float val);
72 
74  void setGsfTrackPout(const math::XYZTLorentzVector& pout);
75 
77  void setClusterEnergies(const std::vector<float>& energies);
78 
80  void setSigmaEtaEta(float val);
81 
83  void setDeltaEta(float val);
84 
86  void setHadEnergy(float val);
87 
89  void setMVA(float val);
90 
92  void setStatus(StatusFlag type, bool status = true);
93 
95  bool electronStatus(StatusFlag) const;
96 
98  int electronStatus() const { return status_; }
99 
101  bool mvaStatus(MvaVariable flag) const;
102 
104  const std::vector<float>& mvaVariables() const { return mvaVariables_; }
105 
107  float mvaVariable(MvaVariable var) const;
108 
110  float hadEnergy() const { return hadEnergy_; }
111  float sigmaEtaEta() const { return sigmaEtaEta_; }
112 
113  private:
114  void setVariable(MvaVariable type, float var);
115 
116  private:
121 
123  std::vector<float> clusterEnergies_;
124 
126  std::vector<float> mvaVariables_;
127 
130 
132  int status_;
133 
136  float earlyBrem_;
137  float lateBrem_;
139  float hadEnergy_;
140  float deltaEta_;
141  };
142 
144  std::ostream& operator<<(std::ostream& out, const PFCandidateElectronExtra& c);
145 
146 } // namespace reco
147 #endif
reco::PFCandidateElectronExtra::MVA_SigmaPtOverPt
Definition: PFCandidateElectronExtra.h:31
reco::PFCandidateElectronExtra::mvaStatus
bool mvaStatus(MvaVariable flag) const
access to mva variable status
Definition: PFCandidateElectronExtra.cc:133
reco::PFCandidateElectronExtra::MVA_HOverHE
Definition: PFCandidateElectronExtra.h:41
reco::PFCandidateElectronExtra::setVariable
void setVariable(MvaVariable type, float var)
Definition: PFCandidateElectronExtra.cc:118
reco::PFCandidateElectronExtra::sigmaEtaEta
float sigmaEtaEta() const
Definition: PFCandidateElectronExtra.h:111
reco::PFCandidateElectronExtra::pout_
math::XYZTLorentzVector pout_
Variables entering the MVA that should be saved.
Definition: PFCandidateElectronExtra.h:135
reco::PFCandidateElectronExtra::setStatus
void setStatus(StatusFlag type, bool status=true)
set status
Definition: PFCandidateElectronExtra.cc:123
reco::PFCandidateElectronExtra::setSigmaEtaEta
void setSigmaEtaEta(float val)
set the sigmaetaeta
Definition: PFCandidateElectronExtra.cc:80
reco::PFCandidateElectronExtra::status_
int status_
Status of the electron.
Definition: PFCandidateElectronExtra.h:132
mps_update.status
status
Definition: mps_update.py:69
reco::PFCandidateElectronExtra::MVA_EbremOverDeltaP
Definition: PFCandidateElectronExtra.h:38
reco::PFCandidateElectronExtra::deltaEta_
float deltaEta_
Definition: PFCandidateElectronExtra.h:140
reco::PFCandidateElectronExtra::PFCandidateElectronExtra
PFCandidateElectronExtra()
constructor
Definition: PFCandidateElectronExtra.cc:8
reco::PFCandidateElectronExtra::MVA_FirstBrem
Definition: PFCandidateElectronExtra.h:43
reco::PFCandidateElectronExtra::sigmaEtaEta_
float sigmaEtaEta_
Definition: PFCandidateElectronExtra.h:138
reco::PFCandidateElectronExtra::mvaStatus_
int mvaStatus_
status of mva variables
Definition: PFCandidateElectronExtra.h:129
reco::PFCandidateElectronExtra::clusterEnergies_
std::vector< float > clusterEnergies_
energy of individual clusters (corrected). The first cluster is the seed
Definition: PFCandidateElectronExtra.h:123
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
reco::PFCandidateElectronExtra::MVA_EseedOverPout
Definition: PFCandidateElectronExtra.h:37
reco::PFCandidateElectronExtra::mvaVariables
const std::vector< float > & mvaVariables() const
access to the mva variables
Definition: PFCandidateElectronExtra.h:104
reco::PFCandidateElectronExtra::MVA_FIRST
Definition: PFCandidateElectronExtra.h:28
reco::PFCandidateElectronExtra::setGsfTrackRef
void setGsfTrackRef(const reco::GsfTrackRef &ref)
set gsftrack reference
Definition: PFCandidateElectronExtra.cc:47
edm::Ref< GsfTrackCollection >
trigObjTnPSource_cfi.var
var
Definition: trigObjTnPSource_cfi.py:21
reco::PFCandidateElectronExtra::hadEnergy_
float hadEnergy_
Definition: PFCandidateElectronExtra.h:139
TrackFwd.h
reco::PFCandidateElectronExtra::StatusFlag
StatusFlag
Definition: PFCandidateElectronExtra.h:18
reco::PFCandidateElectronExtra::~PFCandidateElectronExtra
~PFCandidateElectronExtra()
destructor
Definition: PFCandidateElectronExtra.h:54
reco::PFCandidateElectronExtra::setMVA
void setMVA(float val)
set the result (mostly for debugging)
Definition: PFCandidateElectronExtra.cc:116
reco::PFCandidateElectronExtra::gsfTrackRef_
reco::GsfTrackRef gsfTrackRef_
Ref to the GSF track.
Definition: PFCandidateElectronExtra.h:118
reco::PFCandidateElectronExtra::setHadEnergy
void setHadEnergy(float val)
set the had energy. The cluster energies should be entered before
Definition: PFCandidateElectronExtra.cc:74
reco::PFCandidateElectronExtra::MVA_LogSigmaEtaEta
Definition: PFCandidateElectronExtra.h:40
reco::PFCandidateElectronExtra::MVA_Chi2Gsf
Definition: PFCandidateElectronExtra.h:33
reco::PFCandidateElectronExtra::setEarlyBrem
void setEarlyBrem(float val)
set EarlyBrem
Definition: PFCandidateElectronExtra.cc:69
reco::PFCandidateElectronExtra::MVA_DeltaEtaTrackCluster
Definition: PFCandidateElectronExtra.h:39
reco::PFCandidateElectronExtra::setDeltaEta
void setDeltaEta(float val)
set the delta eta
Definition: PFCandidateElectronExtra.cc:85
reco::PFCandidateElectronExtra
Definition: PFCandidateElectronExtra.h:16
reco::PFCandidateElectronExtra::earlyBrem_
float earlyBrem_
Definition: PFCandidateElectronExtra.h:136
LorentzVector.h
reco::PFCandidateElectronExtra::MvaVariable
MvaVariable
Definition: PFCandidateElectronExtra.h:27
reco::PFCandidateElectronExtra::electronStatus
int electronStatus() const
access to the status
Definition: PFCandidateElectronExtra.h:98
reco::PFCandidateElectronExtra::setGsfTrackPout
void setGsfTrackPout(const math::XYZTLorentzVector &pout)
set the pout (not trivial to get from the GSF track)
Definition: PFCandidateElectronExtra.cc:49
reco::PFCandidateElectronExtra::setClusterEnergies
void setClusterEnergies(const std::vector< float > &energies)
set the cluster energies. the Pout should be saved first
Definition: PFCandidateElectronExtra.cc:90
reco::operator<<
std::ostream & operator<<(std::ostream &, BeamSpot beam)
Definition: BeamSpot.cc:66
reco::PFCandidateElectronExtra::mvaVariables_
std::vector< float > mvaVariables_
mva variables - transient !
Definition: PFCandidateElectronExtra.h:126
reco::PFCandidateElectronExtra::kfTrackRef
reco::TrackRef kfTrackRef() const
return a reference to the corresponding KF track
Definition: PFCandidateElectronExtra.h:66
reco::PFCandidateElectronExtra::mvaVariable
float mvaVariable(MvaVariable var) const
access to any variable
Definition: PFCandidateElectronExtra.cc:135
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
reco::PFCandidateElectronExtra::MVA_LAST
Definition: PFCandidateElectronExtra.h:45
reco::PFCandidateElectronExtra::MVA_EtaGsf
Definition: PFCandidateElectronExtra.h:30
reco::PFCandidateElectronExtra::Rejected
Definition: PFCandidateElectronExtra.h:23
reco::PFCandidateElectronExtra::setKfTrackRef
void setKfTrackRef(const reco::TrackRef &ref)
set kf track reference
Definition: PFCandidateElectronExtra.cc:51
reco::PFCandidateElectronExtra::kfTrackRef_
reco::TrackRef kfTrackRef_
Ref to the KF track.
Definition: PFCandidateElectronExtra.h:120
reco::PFCandidateElectronExtra::MVA_MVA
Definition: PFCandidateElectronExtra.h:44
reco::PFCandidateElectronExtra::gsfTrackRef
reco::GsfTrackRef gsfTrackRef() const
return a reference to the corresponding GSF track
Definition: PFCandidateElectronExtra.h:63
reco::PFCandidateElectronExtra::MVA_NhitsKf
Definition: PFCandidateElectronExtra.h:34
type
type
Definition: HCALResponse.h:21
heppy_batch.val
val
Definition: heppy_batch.py:351
GsfTrackFwd.h
reco::PFCandidateElectronExtra::MVA_LateBrem
Definition: PFCandidateElectronExtra.h:42
reco::PFCandidateElectronExtra::setLateBrem
void setLateBrem(float val)
set LateBrem
Definition: PFCandidateElectronExtra.cc:64
reco::PFCandidateElectronExtra::lateBrem_
float lateBrem_
Definition: PFCandidateElectronExtra.h:137
reco::PFCandidateElectronExtra::MVASelected
Definition: PFCandidateElectronExtra.h:22
reco::PFCandidateElectronExtra::MVA_EtotOverPin
Definition: PFCandidateElectronExtra.h:36
math::XYZTLorentzVector
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
reco::PFCandidateElectronExtra::Selected
Definition: PFCandidateElectronExtra.h:20
reco::PFCandidateElectronExtra::hadEnergy
float hadEnergy() const
access to specific variables
Definition: PFCandidateElectronExtra.h:110
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
reco::PFCandidateElectronExtra::MVA_Fbrem
Definition: PFCandidateElectronExtra.h:32
reco::PFCandidateElectronExtra::ECALDrivenPreselected
Definition: PFCandidateElectronExtra.h:21
reco::PFCandidateElectronExtra::MVA_Chi2Kf
Definition: PFCandidateElectronExtra.h:35
reco::PFCandidateElectronExtra::X
Definition: PFCandidateElectronExtra.h:19
reco::PFCandidateElectronExtra::MVA_LnPtGsf
Definition: PFCandidateElectronExtra.h:29
RemoveAddSevLevel.flag
flag
Definition: RemoveAddSevLevel.py:116