CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
L1ExtraDQM::L1ExtraMonElement< CollectionType > Class Template Reference

#include <L1ExtraDQM.h>

Public Types

typedef
CollectionType::const_iterator 
CIterColl
 

Public Member Functions

void bookHistograms (const edm::EventSetup &evSetup, DQMStore *dbe, const std::string &l1ExtraObject, const std::vector< L1GtObject > &l1GtObj, const bool bookPhi=true, const bool bookEta=true)
 
void fillCharge (const CollectionType *collType, const bool validColl, const bool isL1Coll, const int bxInEvent)
 fill charge More...
 
void fillEtPhiEta (const CollectionType *collType, const bool validColl, const bool bookPhi, const bool bookEta, const bool isL1Coll, const int bxInEvent)
 ET, eta, phi. More...
 
void fillEtTotal (const CollectionType *collType, const bool validColl, const bool isL1Coll, const int bxInEvent)
 fill ET total in energy sums More...
 
void fillHfBitCounts (const CollectionType *collType, const bool validColl, const int countIndex, const bool isL1Coll, const int bxInEvent)
 fill bit counts in HFRings collections More...
 
void fillHfRingEtSums (const CollectionType *collType, const bool validColl, const int countIndex, const bool isL1Coll, const int bxInEvent)
 fill energy sums in HFRings collections More...
 
void fillNrObjects (const CollectionType *collType, const bool validColl, const bool isL1Coll, const int bxInEvent)
 number of objects More...
 
void fillPtPhiEta (const CollectionType *collType, const bool validColl, const bool bookPhi, const bool bookEta, const bool isL1Coll, const int bxInEvent)
 PT, eta, phi. More...
 
 L1ExtraMonElement (const edm::EventSetup &, const int)
 
virtual ~L1ExtraMonElement ()
 

Private Attributes

int m_indexCharge
 
int m_indexEt
 
int m_indexEta
 
int m_indexEtTotal
 
int m_indexHfBitCounts
 
int m_indexHfRingEtSums
 
int m_indexNrObjects
 histogram index for each quantity, set during histogram booking More...
 
int m_indexPhi
 
int m_indexPt
 
std::vector< MonitorElement * > m_monElement
 

Detailed Description

template<class CollectionType>
class L1ExtraDQM::L1ExtraMonElement< CollectionType >

Definition at line 86 of file L1ExtraDQM.h.

Member Typedef Documentation

template<class CollectionType >
typedef CollectionType::const_iterator L1ExtraDQM::L1ExtraMonElement< CollectionType >::CIterColl

Definition at line 96 of file L1ExtraDQM.h.

Constructor & Destructor Documentation

template<class CollectionType >
L1ExtraDQM::L1ExtraMonElement< CollectionType >::L1ExtraMonElement ( const edm::EventSetup evSetup,
const int  nrElements 
)

Definition at line 241 of file L1ExtraDQM.h.

References L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_monElement.

242  :
243  m_indexNrObjects(-1),
244  m_indexPt(-1),
245  m_indexEt(-1),
246  m_indexPhi(-1),
247  m_indexEta(-1),
248  m_indexEtTotal(-1),
249  m_indexCharge(-1),
250  m_indexHfBitCounts(-1),
251  m_indexHfRingEtSums(-1) {
252 
253  m_monElement.reserve(nrElements);
254 
255 }
int m_indexNrObjects
histogram index for each quantity, set during histogram booking
Definition: L1ExtraDQM.h:140
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
L1ExtraDQM::L1ExtraMonElement< CollectionType >::~L1ExtraMonElement ( )
virtual

Definition at line 259 of file L1ExtraDQM.h.

259  {
260 
261  //empty
262 
263 }

Member Function Documentation

template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::bookHistograms ( const edm::EventSetup evSetup,
DQMStore dbe,
const std::string &  l1ExtraObject,
const std::vector< L1GtObject > &  l1GtObj,
const bool  bookPhi = true,
const bool  bookEta = true 
)

Definition at line 267 of file L1ExtraDQM.h.

References L1GetHistLimits::L1HistLimits::binThresholds, DQMStore::book1D(), CenJet, filterCSVwithJSON::copy, ForJet, HfBitCounts, HfRingEtSums, IsoEG, l1extra::L1HFRings::kNumRings, L1GetHistLimits::l1HistLimits(), LogDebug, LogTrace, L1GetHistLimits::L1HistLimits::lowerBinValue, Mu, NoIsoEG, L1GetHistLimits::L1HistLimits::nrBins, AlCaHLTBitMon_QueryRunRegistry::string, TauJet, and L1GetHistLimits::L1HistLimits::upperBinValue.

271  {
272 
273  // FIXME
274  L1GtObject gtObj = l1GtObj.at(0);
275 
276  //
277  std::string histName;
278  std::string histTitle;
279  std::string xAxisTitle;
280  std::string yAxisTitle;
281 
282  std::string quantity = "";
283 
284  int indexHistogram = -1;
285 
286  if (gtObj == HfBitCounts) {
287 
288  L1GetHistLimits l1GetHistLimits(evSetup);
289  const L1GetHistLimits::L1HistLimits& histLimits =
290  l1GetHistLimits.l1HistLimits(gtObj, quantity);
291 
292  const int histNrBins = histLimits.nrBins;
293  const double histMinValue = histLimits.lowerBinValue;
294  const double histMaxValue = histLimits.upperBinValue;
295 
296  indexHistogram++;
297  m_indexHfBitCounts = indexHistogram;
298 
299  for (int iCount = 0; iCount < l1extra::L1HFRings::kNumRings; ++iCount) {
300 
301  histName = l1ExtraObject + "_Count_" + boost::lexical_cast<
302  std::string>(iCount);
303  histTitle = l1ExtraObject + ": count " + boost::lexical_cast<
304  std::string>(iCount);
305  xAxisTitle = l1ExtraObject;
306  yAxisTitle = "Entries";
307 
308  m_monElement.push_back(dbe->book1D(histName, histTitle, histNrBins,
309  histMinValue, histMaxValue));
310  m_monElement[m_indexHfBitCounts + iCount]->setAxisTitle(xAxisTitle,
311  1);
312  m_monElement[m_indexHfBitCounts + iCount]->setAxisTitle(yAxisTitle,
313  2);
314 
315  }
316 
317  return;
318 
319  }
320 
321  // number of objects per event
322  if ((gtObj == Mu) || (gtObj == IsoEG) || (gtObj == NoIsoEG) || (gtObj
323  == CenJet) || (gtObj == ForJet) || (gtObj == TauJet)) {
324 
325  quantity = "NrObjects";
326 
327  L1GetHistLimits l1GetHistLimits(evSetup);
328  const L1GetHistLimits::L1HistLimits& histLimits =
329  l1GetHistLimits.l1HistLimits(gtObj, quantity);
330 
331  const int histNrBins = histLimits.nrBins;
332  const double histMinValue = histLimits.lowerBinValue;
333  const double histMaxValue = histLimits.upperBinValue;
334 
335  histName = l1ExtraObject + "_NrObjectsPerEvent";
336  histTitle = l1ExtraObject + ": number of objects per event";
337  xAxisTitle = "Nr_" + l1ExtraObject;
338  yAxisTitle = "Entries";
339 
340  m_monElement.push_back(dbe->book1D(histName, histTitle, histNrBins,
341  histMinValue, histMaxValue));
342  indexHistogram++;
343 
344  m_monElement[indexHistogram]->setAxisTitle(xAxisTitle, 1);
345  m_monElement[indexHistogram]->setAxisTitle(yAxisTitle, 2);
346  m_indexNrObjects = indexHistogram;
347 
348  }
349 
350  // transverse momentum (energy) PT (ET) [GeV]
351 
352 
353  quantity = "ET";
354  std::string quantityLongName = " transverse energy ";
355 
356  if (gtObj == Mu) {
357  quantity = "PT";
358  quantityLongName = " transverse momentum ";
359  }
360 
361  L1GetHistLimits l1GetHistLimits(evSetup);
362  const L1GetHistLimits::L1HistLimits& histLimits =
363  l1GetHistLimits.l1HistLimits(gtObj, quantity);
364 
365  const int histNrBinsET = histLimits.nrBins;
366  const double histMinValueET = histLimits.lowerBinValue;
367  const double histMaxValueET = histLimits.upperBinValue;
368  const std::vector<float>& binThresholdsET = histLimits.binThresholds;
369 
370  float* binThresholdsETf;
371  size_t sizeBinThresholdsET = binThresholdsET.size();
372  binThresholdsETf = new float[sizeBinThresholdsET];
373  copy(binThresholdsET.begin(), binThresholdsET.end(), binThresholdsETf);
374 
375  LogDebug("L1ExtraDQM") << "\n PT/ET histogram for " << l1ExtraObject
376  << "\n histNrBinsET = " << histNrBinsET << "\n histMinValueET = "
377  << histMinValueET << "\n histMaxValueET = " << histMaxValueET
378  << "\n Last bin value represents the upper limit of the histogram"
379  << std::endl;
380  for (size_t iBin = 0; iBin < sizeBinThresholdsET; ++iBin) {
381  LogTrace("L1ExtraDQM") << "Bin " << iBin << ": " << quantity << " = "
382  << binThresholdsETf[iBin] << " GeV" << std::endl;
383 
384  }
385 
386  histName = l1ExtraObject + "_" + quantity;
387  histTitle = l1ExtraObject + ":" + quantityLongName + quantity + " [GeV]";
388  xAxisTitle = l1ExtraObject + "_" + quantity + " [GeV]";
389  yAxisTitle = "Entries";
390 
391  if (gtObj == HfRingEtSums) {
392 
393  indexHistogram++;
394  m_indexHfRingEtSums = indexHistogram;
395 
396  for (int iCount = 0; iCount < l1extra::L1HFRings::kNumRings; ++iCount) {
397 
398  histName = l1ExtraObject + "_Count_" + boost::lexical_cast<
399  std::string>(iCount);
400  histTitle = l1ExtraObject + ": count " + boost::lexical_cast<
401  std::string>(iCount);
402  xAxisTitle = l1ExtraObject;
403  yAxisTitle = "Entries";
404 
405  m_monElement.push_back(dbe->book1D(histName, histTitle,
406  histNrBinsET, binThresholdsETf));
407 
408  m_monElement[m_indexHfRingEtSums + iCount]->setAxisTitle(xAxisTitle,
409  1);
410  m_monElement[m_indexHfRingEtSums + iCount]->setAxisTitle(yAxisTitle,
411  2);
412 
413  }
414 
415  } else {
416 
417  m_monElement.push_back(dbe->book1D(histName, histTitle, histNrBinsET,
418  binThresholdsETf));
419  indexHistogram++;
420 
421  m_monElement[indexHistogram]->setAxisTitle(xAxisTitle, 1);
422  m_monElement[indexHistogram]->setAxisTitle(yAxisTitle, 2);
423  m_indexPt = indexHistogram;
424  m_indexEt = indexHistogram;
425  m_indexEtTotal = indexHistogram;
426  }
427 
428 
429  delete[] binThresholdsETf;
430 
431  //
432 
433  if (bookPhi) {
434 
435  quantity = "phi";
436 
437  // get limits and binning from L1Extra
438  L1GetHistLimits l1GetHistLimits(evSetup);
439  const L1GetHistLimits::L1HistLimits& histLimits =
440  l1GetHistLimits.l1HistLimits(gtObj, quantity);
441 
442  const int histNrBinsPhi = histLimits.nrBins;
443  const double histMinValuePhi = histLimits.lowerBinValue;
444  const double histMaxValuePhi = histLimits.upperBinValue;
445  const std::vector<float>& binThresholdsPhi = histLimits.binThresholds;
446 
447  float* binThresholdsPhif;
448  size_t sizeBinThresholdsPhi = binThresholdsPhi.size();
449  binThresholdsPhif = new float[sizeBinThresholdsPhi];
450  copy(binThresholdsPhi.begin(), binThresholdsPhi.end(),
451  binThresholdsPhif);
452 
453  LogDebug("L1ExtraDQM") << "\n phi histogram for " << l1ExtraObject
454  << "\n histNrBinsPhi = " << histNrBinsPhi
455  << "\n histMinValuePhi = " << histMinValuePhi
456  << "\n histMaxValuePhi = " << histMaxValuePhi
457  << "\n Last bin value represents the upper limit of the histogram"
458  << std::endl;
459  for (size_t iBin = 0; iBin < sizeBinThresholdsPhi; ++iBin) {
460  LogTrace("L1ExtraDQM") << "Bin " << iBin << ": phi = "
461  << binThresholdsPhif[iBin] << " deg" << std::endl;
462 
463  }
464 
465  histName = l1ExtraObject + "_phi";
466  histTitle = l1ExtraObject + ": phi distribution ";
467  xAxisTitle = l1ExtraObject + "_phi [deg]";
468  yAxisTitle = "Entries";
469 
470  m_monElement.push_back(dbe->book1D(histName, histTitle, histNrBinsPhi,
471  histMinValuePhi, histMaxValuePhi));
472  indexHistogram++;
473 
474  m_monElement[indexHistogram]->setAxisTitle(xAxisTitle, 1);
475  m_monElement[indexHistogram]->setAxisTitle(yAxisTitle, 2);
476  m_indexPhi = indexHistogram;
477 
478  delete[] binThresholdsPhif;
479  }
480 
481  //
482 
483 
484  if (bookEta) {
485 
486  quantity = "eta";
487 
488  // get limits and binning from L1Extra
489  L1GetHistLimits l1GetHistLimits(evSetup);
490  const L1GetHistLimits::L1HistLimits& histLimits =
491  l1GetHistLimits.l1HistLimits(gtObj, quantity);
492 
493  const int histNrBinsEta = histLimits.nrBins;
494  const double histMinValueEta = histLimits.lowerBinValue;
495  const double histMaxValueEta = histLimits.upperBinValue;
496  const std::vector<float>& binThresholdsEta = histLimits.binThresholds;
497 
498  //
499  float* binThresholdsEtaf;
500  size_t sizeBinThresholdsEta = binThresholdsEta.size();
501  binThresholdsEtaf = new float[sizeBinThresholdsEta];
502  copy(binThresholdsEta.begin(), binThresholdsEta.end(),
503  binThresholdsEtaf);
504 
505  LogDebug("L1ExtraDQM") << "\n eta histogram for " << l1ExtraObject
506  << "\n histNrBinsEta = " << histNrBinsEta
507  << "\n histMinValueEta = " << histMinValueEta
508  << "\n histMaxValueEta = " << histMaxValueEta
509  << "\n Last bin value represents the upper limit of the histogram"
510  << std::endl;
511  for (size_t iBin = 0; iBin < sizeBinThresholdsEta; ++iBin) {
512  LogTrace("L1ExtraDQM") << "Bin " << iBin << ": eta = "
513  << binThresholdsEtaf[iBin] << std::endl;
514 
515  }
516 
517  histName = l1ExtraObject + "_eta";
518  histTitle = l1ExtraObject + ": eta distribution ";
519  xAxisTitle = l1ExtraObject + "_eta";
520  yAxisTitle = "Entries";
521 
522  m_monElement.push_back(dbe->book1D(histName, histTitle, histNrBinsEta,
523  binThresholdsEtaf));
524  indexHistogram++;
525 
526  m_monElement[indexHistogram]->setAxisTitle(xAxisTitle, 1);
527  m_monElement[indexHistogram]->setAxisTitle(yAxisTitle, 2);
528  m_indexEta = indexHistogram;
529 
530  delete[] binThresholdsEtaf;
531 
532  }
533 
534 }
#define LogDebug(id)
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:942
#define LogTrace(id)
std::vector< float > binThresholds
Definition: L1GtObject.h:30
int m_indexNrObjects
histogram index for each quantity, set during histogram booking
Definition: L1ExtraDQM.h:140
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillCharge ( const CollectionType *  collType,
const bool  validColl,
const bool  isL1Coll,
const int  bxInEvent 
)

fill charge

Definition at line 632 of file L1ExtraDQM.h.

633  {
634 
635  if (validColl) {
636  for (CIterColl iterColl = collType->begin(); iterColl
637  != collType->end(); ++iterColl) {
638 
639  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
640  continue;
641  }
642 
643  m_monElement[m_indexCharge]->Fill(iterColl->charge());
644  }
645  }
646 
647 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillEtPhiEta ( const CollectionType *  collType,
const bool  validColl,
const bool  bookPhi,
const bool  bookEta,
const bool  isL1Coll,
const int  bxInEvent 
)

ET, eta, phi.

Definition at line 586 of file L1ExtraDQM.h.

References alignCSCRings::e, and rad2deg().

588  {
589 
590  if (validColl) {
591  for (CIterColl iterColl = collType->begin(); iterColl
592  != collType->end(); ++iterColl) {
593 
594  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
595  continue;
596  }
597 
598  m_monElement[m_indexEt]->Fill(iterColl->et());
599 
600  if (bookPhi) {
601  // add a very small quantity to get off the bin edge
602  m_monElement[m_indexPhi]->Fill(rad2deg(iterColl->phi()) + 1.e-6);
603  }
604 
605  if (bookEta) {
606  m_monElement[m_indexEta]->Fill(iterColl->eta());
607  }
608 
609  }
610  }
611 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
const double rad2deg(const double &)
convert phi from rad (-pi, pi] to deg (0, 360)
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillEtTotal ( const CollectionType *  collType,
const bool  validColl,
const bool  isL1Coll,
const int  bxInEvent 
)

fill ET total in energy sums

Definition at line 614 of file L1ExtraDQM.h.

615  {
616 
617  if (validColl) {
618  for (CIterColl iterColl = collType->begin(); iterColl
619  != collType->end(); ++iterColl) {
620 
621  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
622  continue;
623  }
624 
625  m_monElement[m_indexEtTotal]->Fill(iterColl->etTotal());
626  }
627  }
628 
629 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillHfBitCounts ( const CollectionType *  collType,
const bool  validColl,
const int  countIndex,
const bool  isL1Coll,
const int  bxInEvent 
)

fill bit counts in HFRings collections

Definition at line 650 of file L1ExtraDQM.h.

652  {
653 
654  if (validColl) {
655  for (CIterColl iterColl = collType->begin(); iterColl
656  != collType->end(); ++iterColl) {
657 
658  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
659  continue;
660  }
661 
662  m_monElement[m_indexHfBitCounts + countIndex]->Fill(
663  iterColl->hfBitCount(
664  (l1extra::L1HFRings::HFRingLabels) countIndex));
665  }
666  }
667 
668 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillHfRingEtSums ( const CollectionType *  collType,
const bool  validColl,
const int  countIndex,
const bool  isL1Coll,
const int  bxInEvent 
)

fill energy sums in HFRings collections

Definition at line 671 of file L1ExtraDQM.h.

673  {
674 
675  if (validColl) {
676  for (CIterColl iterColl = collType->begin(); iterColl
677  != collType->end(); ++iterColl) {
678 
679  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
680  continue;
681  }
682 
683  m_monElement[m_indexHfRingEtSums + countIndex]->Fill(
684  iterColl->hfEtSum(
685  (l1extra::L1HFRings::HFRingLabels) countIndex));
686  }
687  }
688 
689 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillNrObjects ( const CollectionType *  collType,
const bool  validColl,
const bool  isL1Coll,
const int  bxInEvent 
)

number of objects

Definition at line 537 of file L1ExtraDQM.h.

539  {
540 
541  if (validColl && isL1Coll) {
542  size_t collSize = 0;
543  for (CIterColl iterColl = collType->begin(); iterColl
544  != collType->end(); ++iterColl) {
545 
546  if (iterColl->bx() == bxInEvent) {
547  collSize++;
548  }
549  }
550  m_monElement[m_indexNrObjects]->Fill(collSize);
551  } else {
552  size_t collSize = collType->size();
553  m_monElement[m_indexNrObjects]->Fill(collSize);
554  }
555 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
int m_indexNrObjects
histogram index for each quantity, set during histogram booking
Definition: L1ExtraDQM.h:140
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137
template<class CollectionType >
void L1ExtraDQM::L1ExtraMonElement< CollectionType >::fillPtPhiEta ( const CollectionType *  collType,
const bool  validColl,
const bool  bookPhi,
const bool  bookEta,
const bool  isL1Coll,
const int  bxInEvent 
)

PT, eta, phi.

Definition at line 558 of file L1ExtraDQM.h.

References alignCSCRings::e, and rad2deg().

560  {
561 
562  if (validColl) {
563  for (CIterColl iterColl = collType->begin(); iterColl
564  != collType->end(); ++iterColl) {
565 
566  if (isL1Coll && (iterColl->bx() != bxInEvent)) {
567  continue;
568  }
569 
570  m_monElement[m_indexPt]->Fill(iterColl->pt());
571 
572  if (bookPhi) {
573  // add a very small quantity to get off the bin edge
574  m_monElement[m_indexPhi]->Fill(rad2deg(iterColl->phi()) + 1.e-6);
575  }
576 
577  if (bookEta) {
578  m_monElement[m_indexEta]->Fill(iterColl->eta());
579  }
580 
581  }
582  }
583 }
CollectionType::const_iterator CIterColl
Definition: L1ExtraDQM.h:96
const double rad2deg(const double &)
convert phi from rad (-pi, pi] to deg (0, 360)
std::vector< MonitorElement * > m_monElement
Definition: L1ExtraDQM.h:137

Member Data Documentation

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexCharge
private

Definition at line 146 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexEt
private

Definition at line 142 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexEta
private

Definition at line 144 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexEtTotal
private

Definition at line 145 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexHfBitCounts
private

Definition at line 147 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexHfRingEtSums
private

Definition at line 148 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexNrObjects
private

histogram index for each quantity, set during histogram booking

Definition at line 140 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexPhi
private

Definition at line 143 of file L1ExtraDQM.h.

template<class CollectionType >
int L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_indexPt
private

Definition at line 141 of file L1ExtraDQM.h.

template<class CollectionType >
std::vector<MonitorElement*> L1ExtraDQM::L1ExtraMonElement< CollectionType >::m_monElement
private