CMS 3D CMS Logo

AntiElectronDeadECAL.h
Go to the documentation of this file.
1 #ifndef RecoTauTag_RecoTau_AntiElectronDeadECAL_h
2 #define RecoTauTag_RecoTau_AntiElectronDeadECAL_h
3 
27 
28 #include <vector>
29 #include <string>
30 
32 class CaloGeometryRecord;
34 
36 public:
37  explicit AntiElectronDeadECAL(const edm::ParameterSet&);
39 
40  void beginEvent(const edm::EventSetup&);
41 
42  bool operator()(const reco::Candidate* tau) const;
43 
44 private:
45  const unsigned minStatus_;
46  const double dR2_;
48  const int verbosity_;
49 
51 
52  void updateBadTowers(const edm::EventSetup&);
53 
54  struct TowerInfo {
55  TowerInfo(uint32_t id, unsigned nBad, unsigned maxStatus, double eta, double phi)
56  : id_(id), nBad_(nBad), maxStatus_(maxStatus), eta_(eta), phi_(phi) {}
57  uint32_t id_;
58  unsigned nBad_;
59  unsigned maxStatus_;
60  double eta_;
61  double phi_;
62  };
63 
64  std::vector<TowerInfo> badTowers_;
65  static const uint16_t statusMask_ = 0x1F;
66 
70 
72 };
73 
74 #endif // RecoTauTag_RecoTau_AntiElectronDeadECAL_h
PositionAtECalEntranceComputer positionAtECalEntrance_
edm::ESWatcher< CaloGeometryRecord > caloGeometryWatcher_
const bool extrapolateToECalEntrance_
bool operator()(const reco::Candidate *tau) const
edm::ESWatcher< IdealGeometryRecord > idealGeometryWatcher_
void beginEvent(const edm::EventSetup &)
std::vector< TowerInfo > badTowers_
edm::ESWatcher< EcalChannelStatusRcd > channelStatusWatcher_
void updateBadTowers(const edm::EventSetup &)
AntiElectronDeadECAL(const edm::ParameterSet &)
static const uint16_t statusMask_
TowerInfo(uint32_t id, unsigned nBad, unsigned maxStatus, double eta, double phi)