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 
28 
29 #include <vector>
30 #include <string>
31 
34 class CaloGeometryRecord;
36 
38 public:
41 
42  void beginEvent(const edm::EventSetup&);
43 
44  bool operator()(const reco::Candidate* tau) const;
45 
46 private:
47  const unsigned minStatus_;
48  const double dR2_;
50  const int verbosity_;
54 
56 
57  void updateBadTowers(const edm::EventSetup&);
58 
59  struct TowerInfo {
60  TowerInfo(uint32_t id, unsigned nBad, unsigned maxStatus, double eta, double phi)
61  : id_(id), nBad_(nBad), maxStatus_(maxStatus), eta_(eta), phi_(phi) {}
62  uint32_t id_;
63  unsigned nBad_;
64  unsigned maxStatus_;
65  double eta_;
66  double phi_;
67  };
68 
69  std::vector<TowerInfo> badTowers_;
70  static const uint16_t statusMask_ = 0x1F;
71 
75 
77 };
78 
79 #endif // RecoTauTag_RecoTau_AntiElectronDeadECAL_h
PositionAtECalEntranceComputer positionAtECalEntrance_
edm::ESWatcher< CaloGeometryRecord > caloGeometryWatcher_
const edm::ESGetToken< EcalTrigTowerConstituentsMap, IdealGeometryRecord > ttMapToken_
const bool extrapolateToECalEntrance_
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeometryToken_
edm::ESWatcher< IdealGeometryRecord > idealGeometryWatcher_
const edm::ESGetToken< EcalChannelStatus, EcalChannelStatusRcd > channelStatusToken_
void beginEvent(const edm::EventSetup &)
std::vector< TowerInfo > badTowers_
edm::ESWatcher< EcalChannelStatusRcd > channelStatusWatcher_
bool operator()(const reco::Candidate *tau) const
void updateBadTowers(const edm::EventSetup &)
AntiElectronDeadECAL(const edm::ParameterSet &, edm::ConsumesCollector &&)
static const uint16_t statusMask_
TowerInfo(uint32_t id, unsigned nBad, unsigned maxStatus, double eta, double phi)