CMS 3D CMS Logo

PFAlgo.h
Go to the documentation of this file.
1 #ifndef RecoParticleFlow_PFProducer_PFAlgo_h
2 #define RecoParticleFlow_PFProducer_PFAlgo_h
3 
4 #include <iostream>
5 
6 
7 // #include "FWCore/Framework/interface/Handle.h"
10 // #include "FWCore/Framework/interface/OrphanHandle.h"
12 
16 
17 // next include is necessary for inline functions.
19 
26 
37 
39 
48 class PFElectronAlgo;
49 class PFPhotonAlgo;
50 class PFMuonAlgo;
51 
52 class PFAlgo {
53 
54  public:
55 
57  PFAlgo();
58 
60  virtual ~PFAlgo();
61 
62  void setHOTag(bool ho) { useHO_ = ho;}
63  void setAlgo( int algo ) {algo_ = algo;}
67 
68  void setParameters(double nSigmaECAL,
69  double nSigmaHCAL,
70  const boost::shared_ptr<PFEnergyCalibration>& calibration,
71  const boost::shared_ptr<PFEnergyCalibrationHF>& thepfEnergyCalibrationHF);
72 
74  connector_.setParameters(iCfgCandConnector);
75  }
76 
78  bool bCalibPrimary,
79  double dptRel_PrimaryTrack,
80  double dptRel_MergedTrack,
81  double ptErrorSecondary,
82  const std::vector<double>& nuclCalibFactors){
83  connector_.setParameters(bCorrect, bCalibPrimary, dptRel_PrimaryTrack, dptRel_MergedTrack, ptErrorSecondary, nuclCalibFactors);
84  }
85 
86 
88 
89  void setBadHcalTrackParams(const edm::ParameterSet& pset);
90 
92 
93  void setPFEleParameters(double mvaEleCut,
94  std::string mvaWeightFileEleID,
95  bool usePFElectrons,
96  const boost::shared_ptr<PFSCEnergyCalibration>& thePFSCEnergyCalibration,
97  const boost::shared_ptr<PFEnergyCalibration>& thePFEnergyCalibration,
100  double coneEcalIsoForEgammaSC,
103  unsigned int nTrackIsoForEgammaSC,
105  bool applyCrackCorrections=false,
106  bool usePFSCEleCalib=true,
107  bool useEGElectrons=false,
108  bool useEGammaSupercluster = true);
109 
110  void setPFPhotonParameters(bool usePFPhoton,
111  std::string mvaWeightFileConvID,
112  double mvaConvCut,
113  bool useReg,
115  const boost::shared_ptr<PFEnergyCalibration>& thePFEnergyCalibration,
116  double sumPtTrackIsoForPhoton,
118 
119  void setEGammaParameters(bool use_EGammaFilters,
120  std::string ele_iso_path_mvaWeightFile,
121  double ele_iso_pt,
122  double ele_iso_mva_barrel,
123  double ele_iso_mva_endcap,
124  double ele_iso_combIso_barrel,
125  double ele_iso_combIso_endcap,
126  double ele_noniso_mva,
127  unsigned int ele_missinghits,
129  const edm::ParameterSet& ele_protectionsForJetMET,
130  const edm::ParameterSet& ele_protectionsForBadHcal,
131  double ph_MinEt,
132  double ph_combIso,
133  double ph_HoE,
134  double ph_sietaieta_eb,
135  double ph_sietaieta_ee,
136  const edm::ParameterSet& ph_protectionsForJetMET,
137  const edm::ParameterSet& ph_protectionsForBadHcal);
138 
139 
141  const edm::ValueMap<reco::GsfElectronRef> & valueMapGedElectrons,
142  const edm::ValueMap<reco::PhotonRef> & valueMapGedPhotons);
143 
144 
145 
146  // void setPFPhotonRegWeights(
147  // const GBRForest *LCorrForest,
148  // const GBRForest *GCorrForest,
149  // const GBRForest *ResForest
150 
151  // );
153  const GBRForest *LCorrForestEB,
154  const GBRForest *LCorrForestEE,
155  const GBRForest *GCorrForestBarrel,
156  const GBRForest *GCorrForestEndcapHr9,
157  const GBRForest *GCorrForestEndcapLr9,
158  const GBRForest *PFEcalResolution
159  );
161  double minHFCleaningPt,
162  double minSignificance,
163  double maxSignificance,
165  double maxDeltaPhiPt,
166  double minDeltaMet);
167 
169  bool rejectTracks_Step45,
171  bool usePFConversions,
172  bool usePFDecays,
173  double dptRel_DispVtx);
174 
175  //MIKEB : Parameters for the vertices..
178 
179  // FlorianB : Collection of e/g electrons
180  void setEGElectronCollection(const reco::GsfElectronCollection & egelectrons);
181 
185  void reconstructParticles( const reco::PFBlockHandle& blockHandle );
186 
188  virtual void reconstructParticles( const reco::PFBlockCollection& blocks );
189 
192 
193  // Post Electron Extra Ref
195 
196  // Post Photon Extra Ref
198 
200  const std::unique_ptr<reco::PFCandidateCollection>& pfCandidates() const {
201  return pfCandidates_;
202  }
203 
205  std::unique_ptr<reco::PFCandidateCollection> transferElectronCandidates() {
207  }
208 
210  // done this way because the pfElectronExtra is needed later in the code to create the Refs and with a unique_ptr, it would be destroyed
211  std::unique_ptr<reco::PFCandidateElectronExtraCollection> transferElectronExtra() {
212  auto result = std::make_unique<reco::PFCandidateElectronExtraCollection>();
213  result->insert(result->end(),pfElectronExtra_.begin(),pfElectronExtra_.end());
214  return result;
215  }
216 
217 
219  // done this way because the pfPhotonExtra is needed later in the code to create the Refs and with a unique_ptr, it would be destroyed
220  std::unique_ptr< reco::PFCandidatePhotonExtraCollection> transferPhotonExtra() {
221  auto result = std::make_unique<reco::PFCandidatePhotonExtraCollection>();
222  result->insert(result->end(),pfPhotonExtra_.begin(),pfPhotonExtra_.end());
223  return result;
224  }
225 
226 
228  std::unique_ptr<reco::PFCandidateCollection> transferCleanedCandidates() {
230  }
231 
233  std::unique_ptr< reco::PFCandidateCollection> transferCandidates() {
235  }
236 
238  boost::shared_ptr<PFEnergyCalibration> thePFEnergyCalibration() {
239  return calibration_;
240  }
241 
242  friend std::ostream& operator<<(std::ostream& out, const PFAlgo& algo);
243 
244  protected:
245 
248  virtual void processBlock( const reco::PFBlockRef& blockref,
249  std::list<reco::PFBlockRef>& hcalBlockRefs,
250  std::list<reco::PFBlockRef>& ecalBlockRefs );
251 
255  unsigned reconstructTrack( const reco::PFBlockElement& elt,bool allowLoose= false);
256 
262 
263  unsigned reconstructCluster( const reco::PFCluster& cluster,
264  double particleEnergy,
265  bool useDirection = false,
266  double particleX=0.,
267  double particleY=0.,
268  double particleZ=0.);
269 
270  void setHcalDepthInfo(reco::PFCandidate & cand, const reco::PFCluster& cluster) const ;
271 
273  // double gammaCalibratedEnergy( double clusterEnergy ) const;
274 
277  // double neutralHadronCalibratedEnergy( double energyHCAL,
278  // double energyECAL=-1) const;
279 
280 
282  double neutralHadronEnergyResolution( double clusterEnergy,
283  double clusterEta ) const;
284 
285 
286  double nSigmaHCAL( double clusterEnergy,
287  double clusterEta ) const;
288 
289  std::unique_ptr<reco::PFCandidateCollection> pfCandidates_;
291  std::unique_ptr<reco::PFCandidateCollection> pfElectronCandidates_;
293  std::unique_ptr<reco::PFCandidateCollection> pfPhotonCandidates_;
294  // the post-HF-cleaned candidates
295  std::unique_ptr<reco::PFCandidateCollection> pfCleanedCandidates_;
296 
301 
303  void associatePSClusters(unsigned iEcal,
304  reco::PFBlockElement::Type psElementType,
305  const reco::PFBlock& block,
307  const reco::PFBlock::LinkData& linkData,
308  std::vector<bool>& active,
309  std::vector<double>& psEne);
310 
311  bool isFromSecInt(const reco::PFBlockElement& eTrack, std::string order) const;
312 
313 
314  // Post HF Cleaning
315  void postCleaning();
316 
317 
318 
319 
320  private:
324  unsigned bi );
325 
328 
330  double nSigmaECAL_;
331 
333  double nSigmaHCAL_;
334 
335  boost::shared_ptr<PFEnergyCalibration> calibration_;
336  boost::shared_ptr<PFEnergyCalibrationHF> thepfEnergyCalibrationHF_;
337  boost::shared_ptr<PFSCEnergyCalibration> thePFSCEnergyCalibration_;
338 
339  bool useHO_;
340  int algo_;
341  bool debug_;
342 
345  std::vector<double> setchi2Values_;
346  double mvaEleCut_;
359  unsigned int nTrackIsoForEgammaSC_;
363 
364 
372 
373 
374  // Option to let PF decide the muon momentum
376 
381 
385 
389  int nVtx_;
390 
394 
396  std::vector<double> muonHCAL_;
397  std::vector<double> muonECAL_;
398  std::vector<double> muonHO_;
399  double nSigmaTRACK_;
400  double ptError_;
401  std::vector<double> factors45_;
402 
409 
418 
419 
420  // Parameters for post HF cleaning
428  double minDeltaMet_;
430 
431  //MIKE -May19th: Add option for the vertices....
434 
436 
437 };
438 
439 
440 #endif
441 
442 
unsigned int nTrackIsoForEgammaSC_
Definition: PFAlgo.h:359
Abstract base class for a PFBlock element (track, cluster...)
double ptError_
Definition: PFAlgo.h:400
bool isFromSecInt(const reco::PFBlockElement &eTrack, std::string order) const
Definition: PFAlgo.cc:3621
bool usePFConversions_
Definition: PFAlgo.h:383
float goodTrackDeadHcal_dxy_
Definition: PFAlgo.h:408
std::vector< double > muonHCAL_
Variables for muons and fakes.
Definition: PFAlgo.h:396
bool postMuonCleaning_
Definition: PFAlgo.h:422
double maxDeltaPhiPt_
Definition: PFAlgo.h:427
void setPFMuonAndFakeParameters(const edm::ParameterSet &pset)
Definition: PFAlgo.cc:306
double maxSignificance_
Definition: PFAlgo.h:425
double sumEtEcalIsoForEgammaSC_endcap_
Definition: PFAlgo.h:354
double mvaEleCut_
Definition: PFAlgo.h:346
double minHFCleaningPt_
Definition: PFAlgo.h:423
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
Definition: PFCluster.h:47
double coneEcalIsoForEgammaSC_
Definition: PFAlgo.h:355
double minDeltaMet_
Definition: PFAlgo.h:428
std::unique_ptr< reco::PFCandidateElectronExtraCollection > transferElectronExtra()
Definition: PFAlgo.h:211
double minSignificance_
Definition: PFAlgo.h:424
std::unique_ptr< reco::PFCandidateCollection > pfCandidates_
Definition: PFAlgo.h:289
void setCandConnectorParameters(const edm::ParameterSet &iCfgCandConnector)
Definition: PFAlgo.h:73
unsigned reconstructCluster(const reco::PFCluster &cluster, double particleEnergy, bool useDirection=false, double particleX=0., double particleY=0., double particleZ=0.)
Definition: PFAlgo.cc:3357
void reconstructParticles(const reco::PFBlockHandle &blockHandle)
Definition: PFAlgo.cc:437
std::unique_ptr< reco::PFCandidateCollection > connect(std::unique_ptr< reco::PFCandidateCollection > &pfCand)
const std::unique_ptr< reco::PFCandidateCollection > & pfCandidates() const
Definition: PFAlgo.h:200
std::vector< double > setchi2Values_
Definition: PFAlgo.h:345
bool useProtectionsForJetMET_
Definition: PFAlgo.h:368
double coneTrackIsoForEgammaSC_
Definition: PFAlgo.h:358
float goodPixelTrackDeadHcal_minEta_
Definition: PFAlgo.h:410
double nSigmaHCAL_
number of sigma to judge energy excess in HCAL
Definition: PFAlgo.h:333
std::map< unsigned int, Link > LinkData
Definition: PFBlock.h:46
virtual void processBlock(const reco::PFBlockRef &blockref, std::list< reco::PFBlockRef > &hcalBlockRefs, std::list< reco::PFBlockRef > &ecalBlockRefs)
Definition: PFAlgo.cc:560
void setMuonHandle(const edm::Handle< reco::MuonCollection > &)
Definition: PFAlgo.cc:353
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
std::vector< PFRecHit > PFRecHitCollection
collection of PFRecHit objects
Definition: PFRecHitFwd.h:9
const edm::ValueMap< reco::PhotonRef > * valueMapGedPhotons_
Definition: PFAlgo.h:371
void checkCleaning(const reco::PFRecHitCollection &cleanedHF)
Check HF Cleaning.
Definition: PFAlgo.cc:3764
PFCandConnector connector_
Definition: PFAlgo.h:393
void setDisplacedVerticesParameters(bool rejectTracks_Bad, bool rejectTracks_Step45, bool usePFNuclearInteractions, bool usePFConversions, bool usePFDecays, double dptRel_DispVtx)
Definition: PFAlgo.cc:376
double sumEtEcalIsoForEgammaSC_barrel_
Definition: PFAlgo.h:353
PFElectronAlgo * pfele_
Definition: PFAlgo.h:360
void setPFEleParameters(double mvaEleCut, std::string mvaWeightFileEleID, bool usePFElectrons, const boost::shared_ptr< PFSCEnergyCalibration > &thePFSCEnergyCalibration, const boost::shared_ptr< PFEnergyCalibration > &thePFEnergyCalibration, double sumEtEcalIsoForEgammaSC_barrel, double sumEtEcalIsoForEgammaSC_endcap, double coneEcalIsoForEgammaSC, double sumPtTrackIsoForEgammaSC_barrel, double sumPtTrackIsoForEgammaSC_endcap, unsigned int nTrackIsoForEgammaSC, double coneTrackIsoForEgammaSC, bool applyCrackCorrections=false, bool usePFSCEleCalib=true, bool useEGElectrons=false, bool useEGammaSupercluster=true)
Definition: PFAlgo.cc:99
float goodPixelTrackDeadHcal_dxy_
Definition: PFAlgo.h:416
PFMuonAlgo * pfmu_
Definition: PFAlgo.h:362
void setPFVertexParameters(bool useVertex, const reco::VertexCollection *primaryVertices)
Definition: PFAlgo.cc:394
void setEGElectronCollection(const reco::GsfElectronCollection &egelectrons)
Definition: PFAlgo.cc:3652
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
int nVtx_
Definition: PFAlgo.h:389
bool rejectTracks_Step45_
Definition: PFAlgo.h:380
double minSignificanceReduction_
Definition: PFAlgo.h:426
void setPFPhotonParameters(bool usePFPhoton, std::string mvaWeightFileConvID, double mvaConvCut, bool useReg, std::string X0_Map, const boost::shared_ptr< PFEnergyCalibration > &thePFEnergyCalibration, double sumPtTrackIsoForPhoton, double sumPtTrackIsoSlopeForPhoton)
Definition: PFAlgo.cc:161
std::vector< double > factors45_
Definition: PFAlgo.h:401
bool useHO_
Definition: PFAlgo.h:339
std::unique_ptr< reco::PFCandidateCollection > transferCandidates()
Definition: PFAlgo.h:233
int algo_
Definition: PFAlgo.h:340
bool useEGammaSupercluster_
Definition: PFAlgo.h:352
std::unique_ptr< reco::PFCandidateCollection > pfCleanedCandidates_
Definition: PFAlgo.h:295
bool usePFNuclearInteractions_
Definition: PFAlgo.h:382
bool postHFCleaning_
Definition: PFAlgo.h:421
void setDebug(bool debug)
Definition: PFAlgo.h:66
void setEGammaCollections(const edm::View< reco::PFCandidate > &pfEgammaCandidates, const edm::ValueMap< reco::GsfElectronRef > &valueMapGedElectrons, const edm::ValueMap< reco::PhotonRef > &valueMapGedPhotons)
Definition: PFAlgo.cc:271
void setBadHcalTrackParams(const edm::ParameterSet &pset)
Definition: PFAlgo.cc:334
boost::shared_ptr< PFEnergyCalibration > thePFEnergyCalibration()
return the pointer to the calibration function
Definition: PFAlgo.h:238
void setParameters(double nSigmaECAL, double nSigmaHCAL, const boost::shared_ptr< PFEnergyCalibration > &calibration, const boost::shared_ptr< PFEnergyCalibrationHF > &thepfEnergyCalibrationHF)
Definition: PFAlgo.cc:79
Based on a class from : V. Roberfroid, February 2008.
const edm::View< reco::PFCandidate > * pfEgammaCandidates_
Definition: PFAlgo.h:369
std::unique_ptr< reco::PFCandidateCollection > transferCleanedCandidates()
Definition: PFAlgo.h:228
bool useEGElectrons_
Definition: PFAlgo.h:351
void associatePSClusters(unsigned iEcal, reco::PFBlockElement::Type psElementType, const reco::PFBlock &block, const edm::OwnVector< reco::PFBlockElement > &elements, const reco::PFBlock::LinkData &linkData, std::vector< bool > &active, std::vector< double > &psEne)
Associate PS clusters to a given ECAL cluster, and return their energy.
Definition: PFAlgo.cc:3566
std::unique_ptr< reco::PFCandidateCollection > transferElectronCandidates()
Definition: PFAlgo.h:205
std::string mvaWeightFileEleID_
Variables for PFElectrons.
Definition: PFAlgo.h:344
bool usePFMuonMomAssign_
Definition: PFAlgo.h:375
PFPhotonAlgo * pfpho_
Definition: PFAlgo.h:361
float goodTrackDeadHcal_validFr_
Definition: PFAlgo.h:407
void setPFPhotonRegWeights(const GBRForest *LCorrForestEB, const GBRForest *LCorrForestEE, const GBRForest *GCorrForestBarrel, const GBRForest *GCorrForestEndcapHr9, const GBRForest *GCorrForestEndcapLr9, const GBRForest *PFEcalResolution)
Definition: PFAlgo.cc:293
reco::Vertex primaryVertex_
Definition: PFAlgo.h:432
double nSigmaHCAL(double clusterEnergy, double clusterEta) const
Definition: PFAlgo.cc:3517
edm::Handle< reco::MuonCollection > muonHandle_
Definition: PFAlgo.h:435
bool usePFSCEleCalib_
Definition: PFAlgo.h:350
std::vector< double > muonECAL_
Definition: PFAlgo.h:397
void setPFMuonAlgo(PFMuonAlgo *algo)
Definition: PFAlgo.h:64
void setPostHFCleaningParameters(bool postHFCleaning, double minHFCleaningPt, double minSignificance, double maxSignificance, double minSignificanceReduction, double maxDeltaPhiPt, double minDeltaMet)
Definition: PFAlgo.cc:359
std::vector< PFBlock > PFBlockCollection
collection of PFBlock objects
Definition: PFBlockFwd.h:11
PFEGammaFilters * pfegamma_
Definition: PFAlgo.h:367
int goodPixelTrackDeadHcal_maxLost3Hit_
Definition: PFAlgo.h:414
reco::PFBlockRef createBlockRef(const reco::PFBlockCollection &blocks, unsigned bi)
Definition: PFAlgo.cc:3554
reco::PFCandidatePhotonExtraCollection pfPhotonExtra_
the extra photon collection
Definition: PFAlgo.h:300
void setHOTag(bool ho)
Definition: PFAlgo.h:62
void setCandConnectorParameters(bool bCorrect, bool bCalibPrimary, double dptRel_PrimaryTrack, double dptRel_MergedTrack, double ptErrorSecondary, const std::vector< double > &nuclCalibFactors)
Definition: PFAlgo.h:77
double useBestMuonTrack_
Definition: PFAlgo.h:429
std::unique_ptr< reco::PFCandidateCollection > pfPhotonCandidates_
the unfiltered photon collection
Definition: PFAlgo.h:293
float goodPixelTrackDeadHcal_maxPt_
Definition: PFAlgo.h:411
std::unique_ptr< reco::PFCandidatePhotonExtraCollection > transferPhotonExtra()
Definition: PFAlgo.h:220
unsigned reconstructTrack(const reco::PFBlockElement &elt, bool allowLoose=false)
Definition: PFAlgo.cc:3277
#define debug
Definition: HDRShower.cc:19
int goodTrackDeadHcal_layers_
Definition: PFAlgo.h:406
std::vector< double > muonHO_
Definition: PFAlgo.h:398
bool useVertices_
Definition: PFAlgo.h:433
primaryVertices
Definition: jets_cff.py:26
float goodPixelTrackDeadHcal_ptErrRel_
Definition: PFAlgo.h:412
std::vector< reco::PFCandidatePhotonExtra > PFCandidatePhotonExtraCollection
collection of PFCandidatePhotonExtras
double dptRel_DispVtx_
Definition: PFAlgo.h:388
boost::shared_ptr< PFEnergyCalibration > calibration_
Definition: PFAlgo.h:335
reco::PFBlockHandle blockHandle_
input block handle (full framework case)
Definition: PFAlgo.h:327
boost::shared_ptr< PFSCEnergyCalibration > thePFSCEnergyCalibration_
Definition: PFAlgo.h:337
void setEGammaParameters(bool use_EGammaFilters, std::string ele_iso_path_mvaWeightFile, double ele_iso_pt, double ele_iso_mva_barrel, double ele_iso_mva_endcap, double ele_iso_combIso_barrel, double ele_iso_combIso_endcap, double ele_noniso_mva, unsigned int ele_missinghits, bool useProtectionsForJetMET, const edm::ParameterSet &ele_protectionsForJetMET, const edm::ParameterSet &ele_protectionsForBadHcal, double ph_MinEt, double ph_combIso, double ph_HoE, double ph_sietaieta_eb, double ph_sietaieta_ee, const edm::ParameterSet &ph_protectionsForJetMET, const edm::ParameterSet &ph_protectionsForBadHcal)
Definition: PFAlgo.cc:212
virtual ~PFAlgo()
destructor
Definition: PFAlgo.cc:71
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:40
boost::shared_ptr< PFEnergyCalibrationHF > thepfEnergyCalibrationHF_
Definition: PFAlgo.h:336
bool rejectTracks_Bad_
Definition: PFAlgo.h:379
PFAlgo()
constructor
Definition: PFAlgo.cc:59
PFMuonAlgo * getPFMuonAlgo()
Definition: PFAlgo.cc:93
void setDebug(bool debug)
bool useEGammaFilters_
Variables for NEW EGAMMA selection.
Definition: PFAlgo.h:366
bool debug_
Definition: PFAlgo.h:341
void setPhotonExtraRef(const edm::OrphanHandle< reco::PFCandidatePhotonExtraCollection > &pf_extrah)
Definition: PFAlgo.cc:3921
bool applyCrackCorrectionsElectrons_
Definition: PFAlgo.h:349
float goodTrackDeadHcal_ptErrRel_
Variables for track cleaning in bad HCal areas.
Definition: PFAlgo.h:404
void setParameters(const edm::ParameterSet &iCfgCandConnector)
double sumPtTrackIsoForEgammaSC_endcap_
Definition: PFAlgo.h:357
std::unique_ptr< reco::PFCandidateCollection > pfElectronCandidates_
the unfiltered electron collection
Definition: PFAlgo.h:291
int goodPixelTrackDeadHcal_maxLost4Hit_
Definition: PFAlgo.h:415
float goodPixelTrackDeadHcal_chi2n_
Definition: PFAlgo.h:413
double nSigmaTRACK_
Definition: PFAlgo.h:399
double neutralHadronEnergyResolution(double clusterEnergy, double clusterEta) const
todo: use PFClusterTools for this
Definition: PFAlgo.cc:3502
void postCleaning()
Definition: PFAlgo.cc:3657
std::vector< reco::PFCandidateElectronExtra > PFCandidateElectronExtraCollection
collection of PFCandidateElectronExtras
reco::PFCandidateElectronExtraCollection pfElectronExtra_
the unfiltered electron collection
Definition: PFAlgo.h:298
Definition: PFAlgo.h:52
bool usePFPhotons_
Definition: PFAlgo.h:348
bool usePFDecays_
Definition: PFAlgo.h:384
void setDebug(bool debug)
void setAlgo(int algo)
Definition: PFAlgo.h:63
float goodTrackDeadHcal_chi2n_
Definition: PFAlgo.h:405
double sumPtTrackIsoForEgammaSC_barrel_
Definition: PFAlgo.h:356
float goodPixelTrackDeadHcal_dz_
Definition: PFAlgo.h:417
def move(src, dest)
Definition: eostools.py:510
void setHcalDepthInfo(reco::PFCandidate &cand, const reco::PFCluster &cluster) const
Definition: PFAlgo.cc:3471
const edm::ValueMap< reco::GsfElectronRef > * valueMapGedElectrons_
Definition: PFAlgo.h:370
friend std::ostream & operator<<(std::ostream &out, const PFAlgo &algo)
void setElectronExtraRef(const edm::OrphanHandle< reco::PFCandidateElectronExtraCollection > &extrah)
Definition: PFAlgo.cc:3869
double nSigmaECAL_
number of sigma to judge energy excess in ECAL
Definition: PFAlgo.h:330
Block of elements.
Definition: PFBlock.h:30
bool usePFElectrons_
Definition: PFAlgo.h:347