CMS 3D CMS Logo

EcalDetIdToBeRecoveredProducer.cc
Go to the documentation of this file.
2 
5 
7 
11 
13 
14 #include <set>
15 
16 #include <sys/types.h>
17 #include <csignal>
18 
20  ecalMappingToken_ = esConsumes<EcalElectronicsMapping, EcalMappingRcd, edm::Transition::BeginRun>();
21  channelStatusToken_ = esConsumes<EcalChannelStatusMap, EcalChannelStatusRcd, edm::Transition::BeginRun>();
22  ttMapToken_ = esConsumes<EcalTrigTowerConstituentsMap, IdealGeometryRecord, edm::Transition::BeginRun>();
23  // SRP collections
24  ebSrFlagToken_ = consumes<EBSrFlagCollection>(ps.getParameter<edm::InputTag>("ebSrFlagCollection"));
25  eeSrFlagToken_ = consumes<EESrFlagCollection>(ps.getParameter<edm::InputTag>("eeSrFlagCollection"));
26 
27  // Integrity for xtal data
28  ebIntegrityGainErrorsToken_ = consumes<EBDetIdCollection>(ps.getParameter<edm::InputTag>("ebIntegrityGainErrors"));
30  consumes<EBDetIdCollection>(ps.getParameter<edm::InputTag>("ebIntegrityGainSwitchErrors"));
31  ebIntegrityChIdErrorsToken_ = consumes<EBDetIdCollection>(ps.getParameter<edm::InputTag>("ebIntegrityChIdErrors"));
32 
33  // Integrity for xtal data - EE specific (to be rivisited towards EB+EE common collection)
34  eeIntegrityGainErrorsToken_ = consumes<EEDetIdCollection>(ps.getParameter<edm::InputTag>("eeIntegrityGainErrors"));
36  consumes<EEDetIdCollection>(ps.getParameter<edm::InputTag>("eeIntegrityGainSwitchErrors"));
37  eeIntegrityChIdErrorsToken_ = consumes<EEDetIdCollection>(ps.getParameter<edm::InputTag>("eeIntegrityChIdErrors"));
38 
39  // Integrity Errors
41  consumes<EcalElectronicsIdCollection>(ps.getParameter<edm::InputTag>("integrityTTIdErrors"));
43  consumes<EcalElectronicsIdCollection>(ps.getParameter<edm::InputTag>("integrityBlockSizeErrors"));
44 
45  // output collections
46  ebDetIdCollection_ = ps.getParameter<std::string>("ebDetIdToBeRecovered");
47  eeDetIdCollection_ = ps.getParameter<std::string>("eeDetIdToBeRecovered");
48  ttDetIdCollection_ = ps.getParameter<std::string>("ebFEToBeRecovered");
49  scDetIdCollection_ = ps.getParameter<std::string>("eeFEToBeRecovered");
50 
51  produces<std::set<EBDetId>>(ebDetIdCollection_);
52  produces<std::set<EEDetId>>(eeDetIdCollection_);
53  produces<std::set<EcalTrigTowerDetId>>(ttDetIdCollection_);
54  produces<std::set<EcalScDetId>>(scDetIdCollection_);
55 }
56 
58 
61  ecalMapping_ = pEcalMapping.product();
62 
64  chStatus_ = pChStatus.product();
65 
67 }
68 
69 // fuction return true if "coll" have "item"
70 template <typename CollT, typename ItemT>
71 bool include(const CollT& coll, const ItemT& item) {
72  typename CollT::const_iterator res = std::find(coll.begin(), coll.end(), item);
73  return (res != coll.end());
74 }
75 
77  std::vector<edm::Handle<EBDetIdCollection>> ebDetIdColls;
78  std::vector<edm::Handle<EEDetIdCollection>> eeDetIdColls;
79  std::vector<edm::Handle<EcalElectronicsIdCollection>> ttColls;
80 
81  auto ebDetIdToRecover = std::make_unique<std::set<EBDetId>>(); // isolated channels to be recovered
82  auto eeDetIdToRecover = std::make_unique<std::set<EEDetId>>(); // isolated channels to be recovered
83  auto ebTTDetIdToRecover = std::make_unique<std::set<EcalTrigTowerDetId>>(); // tt to be recovered
84  auto eeSCDetIdToRecover = std::make_unique<std::set<EcalScDetId>>(); // sc to be recovered
85 
86  /*
87  * get collections
88  */
89 
90  // Selective Readout Flags
92  ev.getByToken(ebSrFlagToken_, ebSrFlags);
93 
95  ev.getByToken(eeSrFlagToken_, eeSrFlags);
96 
97  // Integrity errors
100 
101  ebDetIdColls.push_back(ebIntegrityGainErrors);
102 
105  ebDetIdColls.push_back(ebIntegrityGainSwitchErrors);
106 
109  ebDetIdColls.push_back(ebIntegrityChIdErrors);
110 
113  eeDetIdColls.push_back(eeIntegrityGainErrors);
114 
117  eeDetIdColls.push_back(eeIntegrityGainSwitchErrors);
118 
121  eeDetIdColls.push_back(eeIntegrityChIdErrors);
122 
125  ttColls.push_back(integrityTTIdErrors);
126 
129  ttColls.push_back(integrityBlockSizeErrors);
130 
131  /*
132  * get regions of interest from SRP
133  */
134  // -- Barrel
135  EBDetIdCollection ebSrpDetId;
136  EcalTrigTowerDetIdCollection ebSrpTTDetId;
137  for (EBSrFlagCollection::const_iterator it = ebSrFlags->begin(); it != ebSrFlags->end(); ++it) {
138  const int flag = it->value();
140  const EcalTrigTowerDetId ttId = it->id();
141  ebSrpTTDetId.push_back(ttId);
142 
143  const std::vector<DetId> vid = ttMap_->constituentsOf(ttId);
144 
145  for (std::vector<DetId>::const_iterator itId = vid.begin(); itId != vid.end(); ++itId) {
146  ebSrpDetId.push_back(*itId);
147  }
148  }
149  }
150  // -- Endcap
151  EEDetIdCollection eeSrpDetId;
152  //EcalTrigTowerDetIdCollection eeSrpTTDetId;
153  for (EESrFlagCollection::const_iterator it = eeSrFlags->begin(); it != eeSrFlags->end(); ++it) {
154  const int flag = it->value();
156  //EcalTrigTowerDetId ttId = it->id();
157  //eeSrpTTDetId.push_back( ttId );
158  const EcalScDetId scId(it->id());
159  // not clear how to get the vector of DetId constituents of a SC...
161  //std::vector<DetId> vid = ecalMapping_->dccTowerConstituents( eId.dccId(), eId.towerId() );
162  std::vector<DetId> vid;
163  for (int dx = 1; dx <= 5; ++dx) {
164  for (int dy = 1; dy <= 5; ++dy) {
165  const int ix = (scId.ix() - 1) * 5 + dx;
166  const int iy = (scId.iy() - 1) * 5 + dy;
167  const int iz = scId.zside();
168  if (EEDetId::validDetId(ix, iy, iz)) {
169  vid.push_back(EEDetId(ix, iy, iz));
170  }
171  }
172  }
174  //std::vector<DetId> vid = ttMap_->constituentsOf( ttId );
175  for (std::vector<DetId>::const_iterator itId = vid.begin(); itId != vid.end(); ++itId) {
176  eeSrpDetId.push_back(*itId);
177  }
178  }
179  }
180  // SRP switched off: get the list from the DB
181  if (ebSrFlags->empty()) {
182  }
183  // SRP switched off: get the list from the DB
184  if (eeSrFlags->empty()) {
185  }
186 
187  /*
188  * get OR of integrity error collections
189  * in interesting regions flagged by SRP
190  * and insert them in the list of DetId to recover
191  */
192  // -- Barrel
193  for (std::vector<edm::Handle<EBDetIdCollection>>::const_iterator it = ebDetIdColls.begin(); it != ebDetIdColls.end();
194  ++it) {
195  const EBDetIdCollection* idc = it->product();
196  for (EBDetIdCollection::const_iterator jt = idc->begin(); jt != idc->end(); ++jt)
197  if (include(ebSrpDetId, *jt))
198  ebDetIdToRecover->insert(*jt);
199  }
200  // -- Endcap
201  for (std::vector<edm::Handle<EEDetIdCollection>>::const_iterator it = eeDetIdColls.begin(); it != eeDetIdColls.end();
202  ++it) {
203  const EEDetIdCollection* idc = it->product();
204  for (EEDetIdCollection::const_iterator jt = idc->begin(); jt != idc->end(); ++jt)
205  if (include(eeSrpDetId, *jt))
206  eeDetIdToRecover->insert(*jt);
207  }
208 
209  /*
210  * find isolated dead channels (from DB info) --> chStatus 10, 11, 12
211  * and group of dead channels w/ trigger(from DB info) --> chStatus 13
212  * in interesting regions flagged by SRP
213  */
214  // -- Barrel
215  for (EBDetIdCollection::const_iterator itId = ebSrpDetId.begin(); itId != ebSrpDetId.end(); ++itId) {
217  if (chit != chStatus_->end()) {
218  const int flag = (*chit).getStatusCode();
219  if (flag >= 10 && flag <= 12) { // FIXME -- avoid hardcoded values...
220  ebDetIdToRecover->insert(*itId);
221  } else if (flag == 13 || flag == 14) { // FIXME -- avoid hardcoded values...
222  ebTTDetIdToRecover->insert((*itId).tower());
223  }
224  } else {
225  edm::LogError("EcalDetIdToBeRecoveredProducer") << "No channel status found for xtal " << (*itId).rawId()
226  << "! something wrong with EcalChannelStatus in your DB? ";
227  }
228  }
229  // -- Endcap
230  for (EEDetIdCollection::const_iterator itId = eeSrpDetId.begin(); itId != eeSrpDetId.end(); ++itId) {
232  if (chit != chStatus_->end()) {
233  int flag = (*chit).getStatusCode();
234  if (flag >= 10 && flag <= 12) { // FIXME -- avoid hardcoded values...
235  eeDetIdToRecover->insert(*itId);
236  } else if (flag == 13 || flag == 14) { // FIXME -- avoid hardcoded values...
237  eeSCDetIdToRecover->insert(
238  EcalScDetId(1 + ((*itId).ix() - 1) / 5, 1 + ((*itId).iy() - 1) / 5, (*itId).zside()));
239  }
240  } else {
241  edm::LogError("EcalDetIdToBeRecoveredProducer") << "No channel status found for xtal " << (*itId).rawId()
242  << "! something wrong with EcalChannelStatus in your DB? ";
243  }
244  }
245 
246  // loop over electronics id associated with TT and SC
247  for (size_t t = 0; t < ttColls.size(); ++t) {
248  const EcalElectronicsIdCollection& coll = *(ttColls[t]);
249 
250  for (size_t i = 0; i < coll.size(); ++i) {
251  const EcalElectronicsId elId = coll[i];
252  const EcalSubdetector subdet = elId.subdet();
253  const DetId detId = ecalMapping_->getDetId(elId);
254 
255  if (subdet == EcalBarrel) { // elId pointing to TT
256  // get list of crystals corresponding to TT
257  const EcalTrigTowerDetId ttId(ttMap_->towerOf(detId));
258  const std::vector<DetId>& vid = ttMap_->constituentsOf(ttId);
259 
260  for (size_t j = 0; j < vid.size(); ++j) {
261  const EBDetId ebdi(vid[j]);
262  if (include(ebSrpDetId, ebdi)) {
263  ebDetIdToRecover->insert(ebdi);
264  ebTTDetIdToRecover->insert(ebdi.tower());
265  }
266  }
267  } else if (subdet == EcalEndcap) { // elId pointing to SC
268  // extract list of crystals corresponding to SC
269  const EcalScDetId scId(detId);
270  std::vector<DetId> vid;
271  for (int dx = 1; dx <= 5; ++dx) {
272  for (int dy = 1; dy <= 5; ++dy) {
273  const int ix = (scId.ix() - 1) * 5 + dx;
274  const int iy = (scId.iy() - 1) * 5 + dy;
275  const int iz = scId.zside();
276  if (EEDetId::validDetId(ix, iy, iz))
277  vid.push_back(EEDetId(ix, iy, iz));
278  }
279  }
280 
281  for (size_t j = 0; j < vid.size(); ++j) {
282  const EEDetId eedi(vid[i]);
283  if (include(eeSrpDetId, eedi)) {
284  eeDetIdToRecover->insert(eedi);
285  eeSCDetIdToRecover->insert(EcalScDetId(eedi));
286  }
287  }
288  } else
289  edm::LogWarning("EcalDetIdToBeRecoveredProducer")
290  << "Incorrect EcalSubdetector = " << subdet << " in EcalElectronicsIdCollection collection ";
291  }
292  }
293 
294  // return the collections
295  ev.put(std::move(ebDetIdToRecover), ebDetIdCollection_);
296  ev.put(std::move(eeDetIdToRecover), eeDetIdCollection_);
297  ev.put(std::move(ebTTDetIdToRecover), ttDetIdCollection_);
298  ev.put(std::move(eeSCDetIdToRecover), scDetIdCollection_);
299 }
300 
303  desc.add<edm::InputTag>("ebIntegrityChIdErrors", edm::InputTag("ecalDigis", "EcalIntegrityChIdErrors"));
304  desc.add<std::string>("ebDetIdToBeRecovered", "ebDetId");
305  desc.add<edm::InputTag>("integrityTTIdErrors", edm::InputTag("ecalDigis", "EcalIntegrityTTIdErrors"));
306  desc.add<edm::InputTag>("eeIntegrityGainErrors", edm::InputTag("ecalDigis", "EcalIntegrityGainErrors"));
307  desc.add<std::string>("ebFEToBeRecovered", "ebFE");
308  desc.add<edm::InputTag>("ebIntegrityGainErrors", edm::InputTag("ecalDigis", "EcalIntegrityGainErrors"));
309  desc.add<std::string>("eeDetIdToBeRecovered", "eeDetId");
310  desc.add<edm::InputTag>("eeIntegrityGainSwitchErrors", edm::InputTag("ecalDigis", "EcalIntegrityGainSwitchErrors"));
311  desc.add<edm::InputTag>("eeIntegrityChIdErrors", edm::InputTag("ecalDigis", "EcalIntegrityChIdErrors"));
312  desc.add<edm::InputTag>("ebIntegrityGainSwitchErrors", edm::InputTag("ecalDigis", "EcalIntegrityGainSwitchErrors"));
313  desc.add<edm::InputTag>("ebSrFlagCollection", edm::InputTag("ecalDigis"));
314  desc.add<std::string>("eeFEToBeRecovered", "eeFE");
315  desc.add<edm::InputTag>("integrityBlockSizeErrors", edm::InputTag("ecalDigis", "EcalIntegrityBlockSizeErrors"));
316  desc.add<edm::InputTag>("eeSrFlagCollection", edm::InputTag("ecalDigis"));
317  descriptions.add("ecalDetIdToBeRecovered", desc);
318 }
319 
ConfigurationDescriptions.h
edm::EDCollection::push_back
void push_back(T const &t)
Definition: EDCollection.h:60
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
EcalDetIdToBeRecoveredProducer::integrityTTIdErrorsToken_
edm::EDGetTokenT< EcalElectronicsIdCollection > integrityTTIdErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:69
EcalCondObjectContainer::end
const_iterator end() const
Definition: EcalCondObjectContainer.h:76
EcalDetIdToBeRecoveredProducer::eeIntegrityChIdErrorsToken_
edm::EDGetTokenT< EEDetIdCollection > eeIntegrityChIdErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:66
edm::EDCollection::begin
const_iterator begin() const
Definition: EDCollection.h:117
Handle.h
EcalDetIdToBeRecoveredProducer::integrityBlockSizeErrorsToken_
edm::EDGetTokenT< EcalElectronicsIdCollection > integrityBlockSizeErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:70
mps_fire.i
i
Definition: mps_fire.py:428
EcalDetIdToBeRecoveredProducer::EcalDetIdToBeRecoveredProducer
EcalDetIdToBeRecoveredProducer(const edm::ParameterSet &ps)
Definition: EcalDetIdToBeRecoveredProducer.cc:19
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
EcalDetIdToBeRecoveredProducer::scDetIdCollection_
std::string scDetIdCollection_
Definition: EcalDetIdToBeRecoveredProducer.h:78
HLT_FULL_cff.ebIntegrityGainErrors
ebIntegrityGainErrors
Definition: HLT_FULL_cff.py:8236
MessageLogger.h
HLT_FULL_cff.ebIntegrityGainSwitchErrors
ebIntegrityGainSwitchErrors
Definition: HLT_FULL_cff.py:8240
EcalDetIdToBeRecoveredProducer::ebIntegrityGainSwitchErrorsToken_
edm::EDGetTokenT< EBDetIdCollection > ebIntegrityGainSwitchErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:60
EcalDetIdToBeRecoveredProducer::channelStatusToken_
edm::ESGetToken< EcalChannelStatusMap, EcalChannelStatusRcd > channelStatusToken_
Definition: EcalDetIdToBeRecoveredProducer.h:49
EcalDetIdToBeRecoveredProducer::ttMap_
edm::ESHandle< EcalTrigTowerConstituentsMap > ttMap_
Definition: EcalDetIdToBeRecoveredProducer.h:47
ESHandle.h
vid
Definition: VIDCutFlowResult.h:25
edm::Run
Definition: Run.h:45
EBDetId
Definition: EBDetId.h:17
EcalScDetId::zside
int zside() const
Definition: EcalScDetId.h:64
EcalDetIdToBeRecoveredProducer
Definition: EcalDetIdToBeRecoveredProducer.h:33
EcalDetIdCollections.h
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89287
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
ecaldqm::ttId
unsigned ttId(DetId const &)
Definition: EcalDQMCommonUtils.cc:101
EcalSubdetector
EcalSubdetector
Definition: EcalSubdetector.h:10
EcalDetIdToBeRecoveredProducer::produce
void produce(edm::Event &evt, const edm::EventSetup &es) final
Definition: EcalDetIdToBeRecoveredProducer.cc:76
EcalTrigTowerDetId
Definition: EcalTrigTowerDetId.h:14
EcalDetIdToBeRecoveredProducer::~EcalDetIdToBeRecoveredProducer
~EcalDetIdToBeRecoveredProducer() override
Definition: EcalDetIdToBeRecoveredProducer.cc:57
spr::find
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
edm::Handle
Definition: AssociativeIterator.h:50
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
EcalBarrel
Definition: EcalSubdetector.h:10
EcalRecHitCollections.h
DetId
Definition: DetId.h:17
EcalDetIdToBeRecoveredProducer::eeIntegrityGainSwitchErrorsToken_
edm::EDGetTokenT< EEDetIdCollection > eeIntegrityGainSwitchErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:65
HLT_FULL_cff.ebIntegrityChIdErrors
ebIntegrityChIdErrors
Definition: HLT_FULL_cff.py:8231
MakerMacros.h
EBDetId::tower
EcalTrigTowerDetId tower() const
get the HCAL/trigger iphi of this crystal
Definition: EBDetId.h:57
edm::EDCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: EDCollection.h:19
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
EcalScDetId
Definition: EcalScDetId.h:24
EcalDetIdToBeRecoveredProducer::ebDetIdCollection_
std::string ebDetIdCollection_
Definition: EcalDetIdToBeRecoveredProducer.h:75
edm::ESHandle< EcalElectronicsMapping >
EcalCondObjectContainer::find
const_iterator find(uint32_t rawId) const
Definition: EcalCondObjectContainer.h:53
ParameterSetDescription.h
EcalElectronicsId
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
Definition: EcalElectronicsId.h:18
EcalDetIdToBeRecoveredProducer::ttDetIdCollection_
std::string ttDetIdCollection_
Definition: EcalDetIdToBeRecoveredProducer.h:77
EEDetId
Definition: EEDetId.h:14
EcalDetIdToBeRecoveredProducer::eeIntegrityGainErrorsToken_
edm::EDGetTokenT< EEDetIdCollection > eeIntegrityGainErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:64
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
EcalEndcap
Definition: EcalSubdetector.h:10
edm::ParameterSet
Definition: ParameterSet.h:47
EcalDetIdToBeRecoveredProducer::eeDetIdCollection_
std::string eeDetIdCollection_
Definition: EcalDetIdToBeRecoveredProducer.h:76
EcalDetIdToBeRecoveredProducer::ebIntegrityChIdErrorsToken_
edm::EDGetTokenT< EBDetIdCollection > ebIntegrityChIdErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:61
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
EcalElectronicsMapping::getDetId
DetId getDetId(const EcalElectronicsId &id) const
Get the detid given an electronicsId.
Definition: EcalElectronicsMapping.cc:410
EcalScDetId::iy
int iy() const
Definition: EcalScDetId.h:76
HLT_FULL_cff.integrityTTIdErrors
integrityTTIdErrors
Definition: HLT_FULL_cff.py:8233
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:148
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
PVValHelper::dy
Definition: PVValidationHelpers.h:49
B2GTnPMonitor_cfi.item
item
Definition: B2GTnPMonitor_cfi.py:147
edm::EventSetup
Definition: EventSetup.h:57
EcalDetIdToBeRecoveredProducer::chStatus_
const EcalChannelStatusMap * chStatus_
Definition: EcalDetIdToBeRecoveredProducer.h:45
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
res
Definition: Electron.h:6
edm::EDCollection
Definition: EDCollection.h:16
EcalTrigTowerConstituentsMap::towerOf
EcalTrigTowerDetId towerOf(const DetId &id) const
Get the tower id for this det id (or null if not known)
Definition: EcalTrigTowerConstituentsMap.cc:11
HLT_FULL_cff.integrityBlockSizeErrors
integrityBlockSizeErrors
Definition: HLT_FULL_cff.py:8243
HLT_FULL_cff.eeIntegrityGainSwitchErrors
eeIntegrityGainSwitchErrors
Definition: HLT_FULL_cff.py:8238
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
eostools.move
def move(src, dest)
Definition: eostools.py:511
writedatasetfile.run
run
Definition: writedatasetfile.py:27
EcalDetIdToBeRecoveredProducer::beginRun
void beginRun(edm::Run const &run, const edm::EventSetup &es) final
Definition: EcalDetIdToBeRecoveredProducer.cc:59
EcalElectronicsId::subdet
EcalSubdetector subdet() const
get the subdet
Definition: EcalElectronicsId.cc:19
EcalDetIdToBeRecoveredProducer::ecalMapping_
const EcalElectronicsMapping * ecalMapping_
Definition: EcalDetIdToBeRecoveredProducer.h:46
EcalDetIdToBeRecoveredProducer.h
EcalTrigTowerConstituentsMap::constituentsOf
std::vector< DetId > constituentsOf(const EcalTrigTowerDetId &id) const
Get the constituent detids for this tower id.
Definition: EcalTrigTowerConstituentsMap.cc:162
EcalSrFlag::SRF_FULL
static const int SRF_FULL
Definition: EcalSrFlag.h:24
edm::EDCollection::size
size_type size() const
Definition: EDCollection.h:82
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
EcalDetIdToBeRecoveredProducer::eeSrFlagToken_
edm::EDGetTokenT< EESrFlagCollection > eeSrFlagToken_
Definition: EcalDetIdToBeRecoveredProducer.h:56
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
EcalDetIdToBeRecoveredProducer::ebSrFlagToken_
edm::EDGetTokenT< EBSrFlagCollection > ebSrFlagToken_
Definition: EcalDetIdToBeRecoveredProducer.h:55
EcalDetIdToBeRecoveredProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: EcalDetIdToBeRecoveredProducer.cc:301
EEDetId::validDetId
static bool validDetId(int crystal_ix, int crystal_iy, int iz)
Definition: EEDetId.h:248
include
bool include(const CollT &coll, const ItemT &item)
Definition: EcalDetIdToBeRecoveredProducer.cc:71
EcalCondObjectContainer::const_iterator
std::vector< Item >::const_iterator const_iterator
Definition: EcalCondObjectContainer.h:19
EcalDetIdToBeRecoveredProducer::ecalMappingToken_
edm::ESGetToken< EcalElectronicsMapping, EcalMappingRcd > ecalMappingToken_
Definition: EcalDetIdToBeRecoveredProducer.h:48
EcalDetIdToBeRecoveredProducer::ttMapToken_
edm::ESGetToken< EcalTrigTowerConstituentsMap, IdealGeometryRecord > ttMapToken_
Definition: EcalDetIdToBeRecoveredProducer.h:50
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
EcalSrFlag::SRF_FORCED_MASK
static const int SRF_FORCED_MASK
Definition: EcalSrFlag.h:29
edm::Event
Definition: Event.h:73
EcalDetIdToBeRecoveredProducer::ebIntegrityGainErrorsToken_
edm::EDGetTokenT< EBDetIdCollection > ebIntegrityGainErrorsToken_
Definition: EcalDetIdToBeRecoveredProducer.h:59
submitPVValidationJobs.t
string t
Definition: submitPVValidationJobs.py:644
EcalScDetId::ix
int ix() const
Definition: EcalScDetId.h:70
edm::InputTag
Definition: InputTag.h:15
edm::EDCollection::end
const_iterator end() const
Definition: EDCollection.h:122
PVValHelper::dx
Definition: PVValidationHelpers.h:48
HLT_FULL_cff.eeIntegrityGainErrors
eeIntegrityGainErrors
Definition: HLT_FULL_cff.py:8234
HLT_FULL_cff.eeIntegrityChIdErrors
eeIntegrityChIdErrors
Definition: HLT_FULL_cff.py:8239
RemoveAddSevLevel.flag
flag
Definition: RemoveAddSevLevel.py:116
edm::SortedCollection::empty
bool empty() const
Definition: SortedCollection.h:210