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
19 
25 
32 
35 
38 
39 namespace egammaisolation {
40 
42  public:
44  EgammaRecHitExtractor(par, iC) {}
46  virtual ~EgammaRecHitExtractor() ;
47  virtual void fillVetos(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::TrackCollection & tracks) { }
48  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Track & track) const {
49  throw cms::Exception("Configuration Error") << "This extractor " << (typeid(this).name()) << " is not made for tracks";
50  }
51  virtual reco::IsoDeposit deposit(const edm::Event & ev, const edm::EventSetup & evSetup, const reco::Candidate & c) const ;
52 
53  private:
55  const reco::SuperClusterRef& sc, const CaloSubdetectorGeometry* subdet,
56  const CaloGeometry* caloGeom,
57  const EcalRecHitCollection &hits,
58  //const EcalChannelStatus* chStatus,
59  const EcalSeverityLevelAlgo* sevLevel,
60  bool barrel) const;
61 
62  double etMin_ ;
63  double energyMin_ ;
64  double extRadius_ ;
65  double intRadius_ ;
66  double intStrip_ ;
72  bool tryBoth_;
73  bool useEt_;
75  bool sameTag_;
76  //int severityLevelCut_;
77  //float severityRecHitThreshold_;
78  //std::string spIdString_;
79  //float spIdThreshold_;
80  //EcalSeverityLevelAlgo::SpikeId spId_;
81  //std::vector<int> v_chstatus_;
82  std::vector<int> severitiesexclEB_;
83  std::vector<int> severitiesexclEE_;
84  std::vector<int> flagsexclEB_;
85  std::vector<int> flagsexclEE_;
86  };
87 }
88 #endif
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:13
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