CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EgammaRecHitExtractor.h
Go to the documentation of this file.
1 #ifndef EgammaIsolationProducers_EgammaRecHitExtractor_h
2 #define EgammaIsolationProducers_EgammaRecHitExtractor_h
3 //*****************************************************************************
4 // File: EgammaRecHitExtractor.h
5 // ----------------------------------------------------------------------------
6 // OrigAuth: Matthias Mozer, adapted from EgammaHcalExtractor by S. Harper
7 // Institute: IIHE-VUB, RAL
8 //=============================================================================
9 //*****************************************************************************
10 
11 //C++ includes
12 #include <vector>
13 #include <functional>
14 
15 //CMSSW includes
20 
26 
33 
36 
39 
40 namespace egammaisolation {
41 
43  public:
45  EgammaRecHitExtractor(par, iC) {}
47  virtual ~EgammaRecHitExtractor() ;
48  virtual void fillVetos(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::TrackCollection & tracks) { }
49  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Track & track) const {
50  throw cms::Exception("Configuration Error") << "This extractor " << (typeid(this).name()) << " is not made for tracks";
51  }
52  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Candidate & c) const ;
53 
54  private:
56  const reco::SuperClusterRef& sc, const CaloSubdetectorGeometry* subdet,
57  const CaloGeometry* caloGeom,
58  const EcalRecHitCollection &hits,
59  //const EcalChannelStatus* chStatus,
60  const EcalSeverityLevelAlgo* sevLevel,
61  bool barrel) const;
62 
63  double etMin_ ;
64  double energyMin_ ;
65  double extRadius_ ;
66  double intRadius_ ;
67  double intStrip_ ;
73  bool tryBoth_;
74  bool useEt_;
76  bool sameTag_;
77  //int severityLevelCut_;
78  //float severityRecHitThreshold_;
79  //std::string spIdString_;
80  //float spIdThreshold_;
81  //EcalSeverityLevelAlgo::SpikeId spId_;
82  //std::vector<int> v_chstatus_;
83  std::vector<int> severitiesexclEB_;
84  std::vector<int> severitiesexclEE_;
85  std::vector<int> flagsexclEB_;
86  std::vector<int> flagsexclEE_;
87  };
88 }
89 #endif
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
void collect(reco::IsoDeposit &deposit, const reco::SuperClusterRef &sc, const CaloSubdetectorGeometry *subdet, const CaloGeometry *caloGeom, const EcalRecHitCollection &hits, const EcalSeverityLevelAlgo *sevLevel, bool barrel) const
virtual void fillVetos(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks)
EgammaRecHitExtractor(const edm::ParameterSet &par, edm::ConsumesCollector &&iC)
tuple tracks
Definition: testEve_cfg.py:39
edm::EDGetTokenT< EcalRecHitCollection > endcapEcalHitsToken_
edm::EDGetTokenT< EcalRecHitCollection > barrelEcalHitsToken_
virtual reco::IsoDeposit deposit(const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const