24 bxBinEdges_{{1, 271, 541, 892, 1162, 1432, 1783, 2053, 2323, 2674, 2944, 3214, 3446, 3490, 3491, 3565}},
27 lhcStatusInfoCollectionTag_(),
28 lhcStatusSet_(
false) {}
41 "lhcStatusInfoCollectionTag",
edm::InputTag(
"tcdsDigis",
"tcdsRecord"));
59 MEs_.at(
"EtSummaryByLumi").reset();
60 MEs_.at(
"TTFlags4ByLumi").reset();
61 MEs_.at(
"LHCStatusByLumi").reset(-1);
74 MESet& meLHCStatusByLumi(static_cast<MESet&>(
MEs_.at(
"LHCStatusByLumi")));
101 MESet& meTTMaskMap(
MEs_.at(
"TTMaskMap"));
103 for (EcalTPGTowerStatusMap::const_iterator ttItr(towerMap.begin()); ttItr != towerMap.end(); ++ttItr) {
104 if ((*ttItr).second > 0) {
107 meTTMaskMap.fill(ttid, 1);
111 for (EcalTPGStripStatusMap::const_iterator stItr(stripMap.begin()); stItr != stripMap.end(); ++stItr) {
112 if ((*stItr).second > 0) {
115 meTTMaskMap.fill(stid, 1);
175 template <
typename DigiCollection>
177 for (
typename DigiCollection::const_iterator digiItr(_digis.begin()); digiItr != _digis.end(); ++digiItr) {
190 MESet& meEtRealMap(
MEs_.at(
"EtRealMap"));
191 MESet& meEtSummary(
MEs_.at(
"EtSummary"));
192 MESet& meEtSummaryByLumi(
MEs_.at(
"EtSummaryByLumi"));
193 MESet& meLowIntMap(
MEs_.at(
"LowIntMap"));
194 MESet& meMedIntMap(
MEs_.at(
"MedIntMap"));
195 MESet& meHighIntMap(
MEs_.at(
"HighIntMap"));
197 MESet& meTTFlagsVsEt(
MEs_.at(
"TTFlagsVsEt"));
199 MESet& meTTFlags4ByLumi(
MEs_.at(
"TTFlags4ByLumi"));
200 MESet& meTTFMismatch(
MEs_.at(
"TTFMismatch"));
205 double nTP[] = {0., 0., 0.};
209 float et(tpItr->compressedEt());
214 else if (ttid.zside() < 0)
221 meEtReal.fill(ttid,
et);
222 meEtRealMap.fill(ttid,
et);
223 meEtSummary.fill(ttid,
et);
224 meEtSummaryByLumi.fill(ttid,
et);
226 int interest(tpItr->ttFlag() & 0x3);
230 meLowIntMap.fill(ttid);
233 meMedIntMap.fill(ttid);
236 meHighIntMap.fill(ttid);
243 int ttF(tpItr->ttFlag());
244 meTTFlags.fill(ttid, 1.0 * ttF);
245 meTTFlagsVsEt.fill(ttid,
et, 1.0 * ttF);
249 meTTFlags4.fill(ttid);
250 meTTFlags4ByLumi.fill(ttid);
253 meTTFMismatch.fill(ttid);
263 MESet& meTTMaskMapAll(
MEs_.at(
"TTMaskMapAll"));
268 for (EcalTPGTowerStatusMap::const_iterator ttItr(TTStatusMap.begin()); ttItr != TTStatusMap.end(); ++ttItr) {
270 if (ttItr->second > 0)
271 meTTMaskMapAll.setBinContent(ttid, 1);
277 for (EcalTPGStripStatusMap::const_iterator stItr(StripStatusMap.begin()); stItr != StripStatusMap.end(); ++stItr) {
282 if (stItr->second > 0)
283 meTTMaskMapAll.setBinContent(ttid, 1);
289 MESet& meEtMaxEmul(
MEs_.at(
"EtMaxEmul"));
290 MESet& meEmulMaxIndex(
MEs_.at(
"EmulMaxIndex"));
291 MESet& meMatchedIndex(
MEs_.at(
"MatchedIndex"));
292 MESet& meEtEmulError(
MEs_.at(
"EtEmulError"));
293 MESet& meFGEmulError(
MEs_.at(
"FGEmulError"));
294 MESet& meRealvEmulEt(
MEs_.at(
"RealvEmulEt"));
299 int et(tpItr->compressedEt());
303 for (
int iDigi(0); iDigi < 5; iDigi++) {
304 float sampleEt((*tpItr)[iDigi].compressedEt());
306 if (sampleEt >
maxEt) {
312 meEtMaxEmul.fill(ttid,
maxEt);
314 meEmulMaxIndex.fill(ttid, iMax);
324 int realEt(realItr->compressedEt());
327 int ttF(realItr->ttFlag());
328 if ((ttF == 1 || ttF == 3) &&
332 if (tpItr->fineGrain() != realItr->fineGrain())
337 std::vector<int> matchedIndex(0);
340 for (
int iDigi(0); iDigi < 5; iDigi++) {
341 if ((*tpItr)[iDigi].compressedEt() == realEt) {
344 matchedIndex.push_back(iDigi + 1);
349 matchedIndex.clear();
350 matchedIndex.push_back(3);
355 if (matchedIndex.empty())
356 matchedIndex.push_back(0);
359 meRealvEmulEt.fill(ttid, realEt, (*tpItr)[2].compressedEt());
362 for (std::vector<int>::iterator matchItr(matchedIndex.begin()); matchItr != matchedIndex.end();
364 meMatchedIndex.fill(ttid, *matchItr + 0.5);
378 meEtEmulError.fill(ttid);
380 meFGEmulError.fill(ttid);