CMS 3D CMS Logo

EcalRecHitWorkerRecover.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_EcalRecProducers_EcalRecHitWorkerRecover_hh
2 #define RecoLocalCalo_EcalRecProducers_EcalRecHitWorkerRecover_hh
3 
11 
13 #include <vector>
14 
16 
22 
27 
29 
31 public:
34 
35  void set(const edm::EventSetup& es) override;
36  bool run(const edm::Event& evt, const EcalUncalibratedRecHit& uncalibRH, EcalRecHitCollection& result) override;
37 
38 protected:
40  float recCheckCalib(float energy, int ieta);
41  bool alreadyInserted(const DetId& id);
42  float estimateEnergy(int ieta, EcalRecHitCollection* hits, const std::set<DetId>& sId, const std::vector<DetId>& vId);
43  bool checkChannelStatus(const DetId& id, const std::vector<int>& statusestoexclude);
44 
46 
47  // isolated dead channels
51 
56 
63 
64  // list of channel statuses for which recovery in EE should
65  // not be attempted
66  std::vector<int> dbStatusToBeExcludedEE_;
67  std::vector<int> dbStatusToBeExcludedEB_;
68 
69  // dead FE
76 
78 
82 
83  std::unique_ptr<EcalRecHitSimpleAlgo> rechitMaker_;
84 
85  std::set<DetId> recoveredDetIds_EB_;
86  std::set<DetId> recoveredDetIds_EE_;
87 
89 
92 };
93 
94 #endif
bool alreadyInserted(const DetId &id)
bool run(const edm::Event &evt, const EcalUncalibratedRecHit &uncalibRH, EcalRecHitCollection &result) override
EcalDeadChannelRecoveryAlgos< EEDetId > eeDeadChannelCorrector
std::vector< int > dbStatusToBeExcludedEE_
edm::ESHandle< EcalElectronicsMapping > pEcalMapping_
edm::ESHandle< CaloTopology > caloTopology_
float recCheckCalib(float energy, int ieta)
void insertRecHit(const EcalRecHit &hit, EcalRecHitCollection &collection)
std::unique_ptr< EcalRecHitSimpleAlgo > rechitMaker_
edm::ESHandle< EcalTrigTowerConstituentsMap > ttMap_
edm::ESHandle< CaloSubdetectorGeometry > pEBGeom_
float estimateEnergy(int ieta, EcalRecHitCollection *hits, const std::set< DetId > &sId, const std::vector< DetId > &vId)
const CaloSubdetectorGeometry * ebGeom_
Definition: DetId.h:18
edm::EDGetTokenT< EcalTrigPrimDigiCollection > tpDigiToken_
std::set< DetId > recoveredDetIds_EE_
EcalRecHitWorkerRecover(const edm::ParameterSet &, edm::ConsumesCollector &c)
edm::ESHandle< CaloGeometry > caloGeometry_
std::vector< int > dbStatusToBeExcludedEB_
EcalDeadChannelRecoveryAlgos< EBDetId > ebDeadChannelCorrector
edm::ESHandle< EcalChannelStatus > chStatus_
edm::ESHandle< EcalLaserDbService > laser
const EcalElectronicsMapping * ecalMapping_
bool checkChannelStatus(const DetId &id, const std::vector< int > &statusestoexclude)
std::set< DetId > recoveredDetIds_EB_