CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
GlobalDigisHistogrammer Class Reference

#include <GlobalDigisHistogrammer.h>

Inheritance diagram for GlobalDigisHistogrammer:
one::DQMEDAnalyzer< T > one::dqmimplementation::DQMBaseClass< T... >

Public Types

typedef std::map< uint32_t, float, std::less< uint32_t > > MapType
 

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 GlobalDigisHistogrammer (const edm::ParameterSet &)
 
 ~GlobalDigisHistogrammer () override
 
- Public Member Functions inherited from one::DQMEDAnalyzer< T >
 DQMEDAnalyzer ()=default
 
 DQMEDAnalyzer (DQMEDAnalyzer< T... > const &)=delete
 
 DQMEDAnalyzer (DQMEDAnalyzer< T... > &&)=delete
 
 ~DQMEDAnalyzer () override=default
 

Private Attributes

unsigned int count
 
bool doOutput
 
std::string fName
 
int frequency
 
bool getAllProvenances
 
edm::InputTag GlobalDigisSrc_
 
edm::EDGetTokenT< PGlobalDigiGlobalDigisSrc_Token_
 
std::string label
 
MonitorElementmehCSCStripADC
 
MonitorElementmehCSCStripn
 
MonitorElementmehCSCWiren
 
MonitorElementmehCSCWireTime
 
MonitorElementmehDtMuonLayer [4]
 
MonitorElementmehDtMuonn [4]
 
MonitorElementmehDtMuonTime [4]
 
MonitorElementmehDtMuonTimevLayer [4]
 
MonitorElementmehEcalAEE [2]
 
MonitorElementmehEcalMaxPos [2]
 
MonitorElementmehEcalMultvAEE [2]
 
MonitorElementmehEcaln [3]
 
MonitorElementmehEcalSHE [2]
 
MonitorElementmehEcalSHEvAEESHE [2]
 
MonitorElementmehEScalADC [3]
 
MonitorElementmehHcalAEE [4]
 
MonitorElementmehHcalAEESHE [4]
 
MonitorElementmehHcaln [4]
 
MonitorElementmehHcalSHE [4]
 
MonitorElementmehHcalSHEvAEE [4]
 
MonitorElementmehSiPixelADC [7]
 
MonitorElementmehSiPixelCol [7]
 
MonitorElementmehSiPixeln [7]
 
MonitorElementmehSiPixelRow [7]
 
MonitorElementmehSiStripADC [19]
 
MonitorElementmehSiStripn [19]
 
MonitorElementmehSiStripStrip [19]
 
std::string outputfile
 
bool printProvenanceInfo
 
int theCSCStripPedestalCount
 
float theCSCStripPedestalSum
 
int verbosity
 

Detailed Description

Definition at line 52 of file GlobalDigisHistogrammer.h.

Member Typedef Documentation

typedef std::map<uint32_t,float,std::less<uint32_t> > GlobalDigisHistogrammer::MapType

Definition at line 59 of file GlobalDigisHistogrammer.h.

Constructor & Destructor Documentation

GlobalDigisHistogrammer::GlobalDigisHistogrammer ( const edm::ParameterSet iPSet)
explicit

Definition at line 10 of file GlobalDigisHistogrammer.cc.

References doOutput, fName, frequency, getAllProvenances, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), GlobalDigisSrc_, GlobalDigisSrc_Token_, outputfile, printProvenanceInfo, AlCaHLTBitMon_QueryRunRegistry::string, and verbosity.

10  :
11  fName(""), verbosity(0), frequency(0), label(""), getAllProvenances(false),
14 {
15  std::string MsgLoggerCat = "GlobalDigisHistogrammer_GlobalDigisHistogrammer";
16 
17  // get information from parameter set
18  fName = iPSet.getUntrackedParameter<std::string>("Name");
19  verbosity = iPSet.getUntrackedParameter<int>("Verbosity");
20  frequency = iPSet.getUntrackedParameter<int>("Frequency");
21  outputfile = iPSet.getParameter<std::string>("outputFile");
22  doOutput = iPSet.getParameter<bool>("DoOutput");
23  edm::ParameterSet m_Prov =
24  iPSet.getParameter<edm::ParameterSet>("ProvenanceLookup");
26  m_Prov.getUntrackedParameter<bool>("GetAllProvenances");
28  m_Prov.getUntrackedParameter<bool>("PrintProvenanceInfo");
29 
30  //get Labels to use to extract information
31  GlobalDigisSrc_ = iPSet.getParameter<edm::InputTag>("GlobalDigisSrc");
32  //ECalEBSrc_ = iPSet.getParameter<edm::InputTag>("ECalEBSrc");
33  //ECalEESrc_ = iPSet.getParameter<edm::InputTag>("ECalEESrc");
34  //ECalESSrc_ = iPSet.getParameter<edm::InputTag>("ECalESSrc");
35  //HCalSrc_ = iPSet.getParameter<edm::InputTag>("HCalSrc");
36  //SiStripSrc_ = iPSet.getParameter<edm::InputTag>("SiStripSrc");
37  //SiPxlSrc_ = iPSet.getParameter<edm::InputTag>("SiPxlSrc");
38  //MuDTSrc_ = iPSet.getParameter<edm::InputTag>("MuDTSrc");
39  //MuCSCStripSrc_ = iPSet.getParameter<edm::InputTag>("MuCSCStripSrc");
40  //MuCSCWireSrc_ = iPSet.getParameter<edm::InputTag>("MuCSCWireSrc");
41 
42  //fix for consumes
43  GlobalDigisSrc_Token_ = consumes<PGlobalDigi>(iPSet.getParameter<edm::InputTag>("GlobalDigisSrc"));
44  // use value of first digit to determine default output level (inclusive)
45  // 0 is none, 1 is basic, 2 is fill output, 3 is gather output
46  verbosity %= 10;
47 
48  // create persistent object
49  //produces<PGlobalDigi>(label);
50 
51  // print out Parameter Set information being used
52  if (verbosity >= 0) {
53  edm::LogInfo(MsgLoggerCat)
54  << "\n===============================\n"
55  << "Initialized as EDHistogrammer with parameter values:\n"
56  << " Name = " << fName << "\n"
57  << " Verbosity = " << verbosity << "\n"
58  << " Frequency = " << frequency << "\n"
59  << " OutputFile = " << outputfile << "\n"
60  << " DoOutput = " << doOutput << "\n"
61  << " GetProv = " << getAllProvenances << "\n"
62  << " PrintProv = " << printProvenanceInfo << "\n"
63  << " Global Src = " << GlobalDigisSrc_ << "\n"
64 
65  << "===============================\n";
66  }
67 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< PGlobalDigi > GlobalDigisSrc_Token_
GlobalDigisHistogrammer::~GlobalDigisHistogrammer ( )
override

Definition at line 327 of file GlobalDigisHistogrammer.cc.

328 {
329 }

Member Function Documentation

void GlobalDigisHistogrammer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 331 of file GlobalDigisHistogrammer.cc.

References count, edm::EventID::event(), MonitorElement::Fill(), HcalObjRepresent::Fill(), frequency, getAllProvenances, edm::Event::getAllStableProvenance(), PGlobalDigi::getBRL1Digis(), PGlobalDigi::getBRL2Digis(), PGlobalDigi::getBRL3Digis(), edm::Event::getByToken(), PGlobalDigi::getCSCstripDigis(), PGlobalDigi::getCSCwireDigis(), PGlobalDigi::getEBCalDigis(), PGlobalDigi::getEECalDigis(), PGlobalDigi::getESCalDigis(), PGlobalDigi::getFWD1nDigis(), PGlobalDigi::getFWD1pDigis(), PGlobalDigi::getFWD2nDigis(), PGlobalDigi::getFWD2pDigis(), PGlobalDigi::getHBCalDigis(), PGlobalDigi::getHECalDigis(), PGlobalDigi::getHFCalDigis(), PGlobalDigi::getHOCalDigis(), PGlobalDigi::getMB1Digis(), PGlobalDigi::getMB2Digis(), PGlobalDigi::getMB3Digis(), PGlobalDigi::getMB4Digis(), PGlobalDigi::getnBRL1Digis(), PGlobalDigi::getnBRL2Digis(), PGlobalDigi::getnBRL3Digis(), PGlobalDigi::getnCSCstripDigis(), PGlobalDigi::getnCSCwireDigis(), PGlobalDigi::getnEBCalDigis(), PGlobalDigi::getnEECalDigis(), PGlobalDigi::getnESCalDigis(), PGlobalDigi::getnFWD1nDigis(), PGlobalDigi::getnFWD1pDigis(), PGlobalDigi::getnFWD2nDigis(), PGlobalDigi::getnFWD2pDigis(), PGlobalDigi::getnHBCalDigis(), PGlobalDigi::getnHECalDigis(), PGlobalDigi::getnHFCalDigis(), PGlobalDigi::getnHOCalDigis(), PGlobalDigi::getnMB1Digis(), PGlobalDigi::getnMB2Digis(), PGlobalDigi::getnMB3Digis(), PGlobalDigi::getnMB4Digis(), PGlobalDigi::getnTECW1Digis(), PGlobalDigi::getnTECW2Digis(), PGlobalDigi::getnTECW3Digis(), PGlobalDigi::getnTECW4Digis(), PGlobalDigi::getnTECW5Digis(), PGlobalDigi::getnTECW6Digis(), PGlobalDigi::getnTECW7Digis(), PGlobalDigi::getnTECW8Digis(), PGlobalDigi::getnTIBL1Digis(), PGlobalDigi::getnTIBL2Digis(), PGlobalDigi::getnTIBL3Digis(), PGlobalDigi::getnTIBL4Digis(), PGlobalDigi::getnTIDW1Digis(), PGlobalDigi::getnTIDW2Digis(), PGlobalDigi::getnTIDW3Digis(), PGlobalDigi::getnTOBL1Digis(), PGlobalDigi::getnTOBL2Digis(), PGlobalDigi::getnTOBL3Digis(), PGlobalDigi::getnTOBL4Digis(), PGlobalDigi::getTECW1Digis(), PGlobalDigi::getTECW2Digis(), PGlobalDigi::getTECW3Digis(), PGlobalDigi::getTECW4Digis(), PGlobalDigi::getTECW5Digis(), PGlobalDigi::getTECW6Digis(), PGlobalDigi::getTECW7Digis(), PGlobalDigi::getTECW8Digis(), PGlobalDigi::getTIBL1Digis(), PGlobalDigi::getTIBL2Digis(), PGlobalDigi::getTIBL3Digis(), PGlobalDigi::getTIBL4Digis(), PGlobalDigi::getTIDW1Digis(), PGlobalDigi::getTIDW2Digis(), PGlobalDigi::getTIDW3Digis(), PGlobalDigi::getTOBL1Digis(), PGlobalDigi::getTOBL2Digis(), PGlobalDigi::getTOBL3Digis(), PGlobalDigi::getTOBL4Digis(), GlobalDigisSrc_Token_, mps_fire::i, edm::EventBase::id(), edm::HandleBase::isValid(), mehCSCStripADC, mehCSCStripn, mehCSCWiren, mehCSCWireTime, mehDtMuonLayer, mehDtMuonn, mehDtMuonTime, mehDtMuonTimevLayer, mehEcalAEE, mehEcalMaxPos, mehEcalMultvAEE, mehEcaln, mehEcalSHE, mehEcalSHEvAEESHE, mehEScalADC, mehHcalAEE, mehHcalAEESHE, mehHcaln, mehHcalSHE, mehHcalSHEvAEE, mehSiPixelADC, mehSiPixelCol, mehSiPixeln, mehSiPixelRow, mehSiStripADC, mehSiStripn, mehSiStripStrip, nevt, printProvenanceInfo, edm::EventID::run(), AlCaHLTBitMon_QueryRunRegistry::string, and verbosity.

333 {
334  std::string MsgLoggerCat = "GlobalDigisHistogrammer_analyze";
335 
336  // keep track of number of events processed
337  ++count;
338 
339  // get event id information
340  edm::RunNumber_t nrun = iEvent.id().run();
341  edm::EventNumber_t nevt = iEvent.id().event();
342 
343  if (verbosity > 0) {
344  edm::LogInfo(MsgLoggerCat)
345  << "Processing run " << nrun << ", event " << nevt
346  << " (" << count << " events total)";
347  } else if (verbosity == 0) {
348  if (nevt%frequency == 0 || nevt == 1) {
349  edm::LogInfo(MsgLoggerCat)
350  << "Processing run " << nrun << ", event " << nevt
351  << " (" << count << " events total)";
352  }
353  }
354 
355  // clear event holders
356  //clear();
357 
358  // look at information available in the event
359  if (getAllProvenances) {
360 
361  std::vector<const edm::StableProvenance*> AllProv;
362  iEvent.getAllStableProvenance(AllProv);
363 
364  if (verbosity >= 0)
365  edm::LogInfo(MsgLoggerCat)
366  << "Number of Provenances = " << AllProv.size();
367 
368  if (printProvenanceInfo && (verbosity >= 0)) {
369  TString eventout("\nProvenance info:\n");
370 
371  for (unsigned int i = 0; i < AllProv.size(); ++i) {
372  eventout += "\n ******************************";
373  eventout += "\n Module : ";
374  //eventout += (AllProv[i]->product).moduleLabel();
375  eventout += AllProv[i]->moduleLabel();
376  eventout += "\n ProductID : ";
377  //eventout += (AllProv[i]->product).productID_.id_;
378  eventout += AllProv[i]->productID().id();
379  eventout += "\n ClassName : ";
380  //eventout += (AllProv[i]->product).fullClassName_;
381  eventout += AllProv[i]->className();
382  eventout += "\n InstanceName : ";
383  //eventout += (AllProv[i]->product).productInstanceName_;
384  eventout += AllProv[i]->productInstanceName();
385  eventout += "\n BranchName : ";
386  //eventout += (AllProv[i]->product).branchName_;
387  eventout += AllProv[i]->branchName();
388  }
389  eventout += "\n ******************************\n";
390  edm::LogInfo(MsgLoggerCat) << eventout << "\n";
391  printProvenanceInfo = false;
392  getAllProvenances = false;
393  }
394 edm::Handle<PGlobalDigi> srcGlobalDigis;
395  iEvent.getByToken(GlobalDigisSrc_Token_,srcGlobalDigis);
396  if (!srcGlobalDigis.isValid()) {
397  edm::LogWarning(MsgLoggerCat)
398  << "Unable to find PGlobalDigis in event!";
399  return;
400 
401  }
402 
403 
404 
405  int nEBCalDigis = srcGlobalDigis->getnEBCalDigis();
406  int nEECalDigis = srcGlobalDigis->getnEECalDigis();
407  int nESCalDigis = srcGlobalDigis->getnESCalDigis();
408 
409  int nHBCalDigis = srcGlobalDigis->getnHBCalDigis();
410  int nHECalDigis = srcGlobalDigis->getnHECalDigis();
411  int nHOCalDigis = srcGlobalDigis->getnHOCalDigis();
412  int nHFCalDigis = srcGlobalDigis->getnHFCalDigis();
413 
414  int nTIBL1Digis = srcGlobalDigis->getnTIBL1Digis();
415  int nTIBL2Digis = srcGlobalDigis->getnTIBL2Digis();
416  int nTIBL3Digis = srcGlobalDigis->getnTIBL3Digis();
417  int nTIBL4Digis = srcGlobalDigis->getnTIBL4Digis();
418  int nTOBL1Digis = srcGlobalDigis->getnTOBL1Digis();
419  int nTOBL2Digis = srcGlobalDigis->getnTOBL2Digis();
420  int nTOBL3Digis = srcGlobalDigis->getnTOBL3Digis();
421  int nTOBL4Digis = srcGlobalDigis->getnTOBL4Digis();
422  int nTIDW1Digis = srcGlobalDigis->getnTIDW1Digis();
423  int nTIDW2Digis = srcGlobalDigis->getnTIDW2Digis();
424  int nTIDW3Digis = srcGlobalDigis->getnTIDW3Digis();
425  int nTECW1Digis = srcGlobalDigis->getnTECW1Digis();
426  int nTECW2Digis = srcGlobalDigis->getnTECW2Digis();
427  int nTECW3Digis = srcGlobalDigis->getnTECW3Digis();
428  int nTECW4Digis = srcGlobalDigis->getnTECW4Digis();
429  int nTECW5Digis = srcGlobalDigis->getnTECW5Digis();
430  int nTECW6Digis = srcGlobalDigis->getnTECW6Digis();
431  int nTECW7Digis = srcGlobalDigis->getnTECW7Digis();
432  int nTECW8Digis = srcGlobalDigis->getnTECW8Digis();
433 
434  int nBRL1Digis = srcGlobalDigis->getnBRL1Digis();
435  int nBRL2Digis = srcGlobalDigis->getnBRL2Digis();
436  int nBRL3Digis = srcGlobalDigis->getnBRL3Digis();
437  int nFWD1nDigis = srcGlobalDigis->getnFWD1nDigis();
438  int nFWD1pDigis = srcGlobalDigis->getnFWD1pDigis();
439  int nFWD2nDigis = srcGlobalDigis->getnFWD2nDigis();
440  int nFWD2pDigis = srcGlobalDigis->getnFWD2pDigis();
441 
442  int nMB1Digis = srcGlobalDigis->getnMB1Digis();
443  int nMB2Digis = srcGlobalDigis->getnMB2Digis();
444  int nMB3Digis = srcGlobalDigis->getnMB3Digis();
445  int nMB4Digis = srcGlobalDigis->getnMB4Digis();
446 
447  int nCSCstripDigis = srcGlobalDigis->getnCSCstripDigis();
448 
449  int nCSCwireDigis = srcGlobalDigis->getnCSCwireDigis();
450 
451  // get Ecal info
452  std::vector<PGlobalDigi::ECalDigi> EECalDigis =
453  srcGlobalDigis->getEECalDigis();
454  mehEcaln[0]->Fill((float)nEECalDigis);
455  for (unsigned int i = 0; i < EECalDigis.size(); ++i) {
456  mehEcalAEE[0]->Fill(EECalDigis[i].AEE);
457  mehEcalMaxPos[0]->Fill(EECalDigis[i].maxPos);
458  mehEcalMultvAEE[0]->Fill(EECalDigis[i].AEE,(float)nEECalDigis,1);
459  if (EECalDigis[i].SHE != 0.) {
460  mehEcalSHE[0]->Fill(EECalDigis[i].SHE);
461  mehEcalSHEvAEESHE[0]->
462  Fill(EECalDigis[i].AEE/EECalDigis[i].SHE,EECalDigis[i].SHE,1);
463  }
464  }
465 
466  std::vector<PGlobalDigi::ECalDigi> EBCalDigis =
467  srcGlobalDigis->getEBCalDigis();
468  mehEcaln[1]->Fill((float)nEBCalDigis);
469  for (unsigned int i = 0; i < EBCalDigis.size(); ++i) {
470  mehEcalAEE[1]->Fill(EBCalDigis[i].AEE);
471  mehEcalMaxPos[1]->Fill(EBCalDigis[i].maxPos);
472  mehEcalMultvAEE[1]->Fill(EBCalDigis[i].AEE,(float)nEBCalDigis,1);
473  if (EBCalDigis[i].SHE != 0.) {
474  mehEcalSHE[1]->Fill(EBCalDigis[i].SHE);
475  mehEcalSHEvAEESHE[1]->
476  Fill(EBCalDigis[i].AEE/EBCalDigis[i].SHE,EBCalDigis[i].SHE,1);
477  }
478  }
479 
480  std::vector<PGlobalDigi::ESCalDigi> ESCalDigis =
481  srcGlobalDigis->getESCalDigis();
482  mehEcaln[2]->Fill((float)nESCalDigis);
483  for (unsigned int i = 0; i < ESCalDigis.size(); ++i) {
484  mehEScalADC[0]->Fill(ESCalDigis[i].ADC0);
485  mehEScalADC[1]->Fill(ESCalDigis[i].ADC1);
486  mehEScalADC[2]->Fill(ESCalDigis[i].ADC2);
487  }
488 
489  // Get HCal info
490  std::vector<PGlobalDigi::HCalDigi> HBCalDigis =
491  srcGlobalDigis->getHBCalDigis();
492  mehHcaln[0]->Fill((float)nHBCalDigis);
493  for (unsigned int i = 0; i < HBCalDigis.size(); ++i) {
494  mehHcalAEE[0]->Fill(HBCalDigis[i].AEE);
495  if (HBCalDigis[i].SHE != 0.) {
496  mehHcalSHE[0]->Fill(HBCalDigis[i].SHE);
497  mehHcalAEESHE[0]->Fill(HBCalDigis[i].AEE/HBCalDigis[i].SHE);
498  mehHcalSHEvAEE[0]->
499  Fill(HBCalDigis[i].AEE,HBCalDigis[i].SHE,1);
500  }
501  }
502  std::vector<PGlobalDigi::HCalDigi> HECalDigis =
503  srcGlobalDigis->getHECalDigis();
504  mehHcaln[1]->Fill((float)nHECalDigis);
505  for (unsigned int i = 0; i < HECalDigis.size(); ++i) {
506  mehHcalAEE[1]->Fill(HECalDigis[i].AEE);
507  if (HECalDigis[i].SHE != 0.) {
508  mehHcalSHE[1]->Fill(HECalDigis[i].SHE);
509  mehHcalAEESHE[1]->Fill(HECalDigis[i].AEE/HECalDigis[i].SHE);
510  mehHcalSHEvAEE[1]->
511  Fill(HECalDigis[i].AEE,HECalDigis[i].SHE,1);
512  }
513  }
514 
515  std::vector<PGlobalDigi::HCalDigi> HOCalDigis =
516  srcGlobalDigis->getHOCalDigis();
517  mehHcaln[2]->Fill((float)nHOCalDigis);
518  for (unsigned int i = 0; i < HOCalDigis.size(); ++i) {
519  mehHcalAEE[2]->Fill(HOCalDigis[i].AEE);
520  if (HOCalDigis[i].SHE != 0.) {
521  mehHcalSHE[2]->Fill(HOCalDigis[i].SHE);
522  mehHcalAEESHE[2]->Fill(HOCalDigis[i].AEE/HOCalDigis[i].SHE);
523  mehHcalSHEvAEE[2]->
524  Fill(HOCalDigis[i].AEE,HOCalDigis[i].SHE,1);
525  }
526  }
527 
528  std::vector<PGlobalDigi::HCalDigi> HFCalDigis =
529  srcGlobalDigis->getHFCalDigis();
530  mehHcaln[3]->Fill((float)nHFCalDigis);
531  for (unsigned int i = 0; i < HFCalDigis.size(); ++i) {
532  mehHcalAEE[3]->Fill(HFCalDigis[i].AEE);
533  if (HFCalDigis[i].SHE != 0.) {
534  mehHcalSHE[3]->Fill(HFCalDigis[i].SHE);
535  mehHcalAEESHE[3]->Fill(HFCalDigis[i].AEE/HFCalDigis[i].SHE);
536  mehHcalSHEvAEE[3]->
537  Fill(HFCalDigis[i].AEE,HFCalDigis[i].SHE,1);
538  }
539  }
540 
541  // get SiStrip info
542  std::vector<PGlobalDigi::SiStripDigi> TIBL1Digis =
543  srcGlobalDigis->getTIBL1Digis();
544  mehSiStripn[0]->Fill((float)nTIBL1Digis);
545  for (unsigned int i = 0; i < TIBL1Digis.size(); ++i) {
546  mehSiStripADC[0]->Fill(TIBL1Digis[i].ADC);
547  mehSiStripStrip[0]->Fill(TIBL1Digis[i].STRIP);
548  }
549 
550  std::vector<PGlobalDigi::SiStripDigi> TIBL2Digis =
551  srcGlobalDigis->getTIBL2Digis();
552  mehSiStripn[1]->Fill((float)nTIBL2Digis);
553  for (unsigned int i = 0; i < TIBL2Digis.size(); ++i) {
554  mehSiStripADC[1]->Fill(TIBL2Digis[i].ADC);
555  mehSiStripStrip[1]->Fill(TIBL2Digis[i].STRIP);
556  }
557 
558  std::vector<PGlobalDigi::SiStripDigi> TIBL3Digis =
559  srcGlobalDigis->getTIBL3Digis();
560  mehSiStripn[2]->Fill((float)nTIBL3Digis);
561  for (unsigned int i = 0; i < TIBL3Digis.size(); ++i) {
562  mehSiStripADC[2]->Fill(TIBL3Digis[i].ADC);
563  mehSiStripStrip[2]->Fill(TIBL3Digis[i].STRIP);
564  }
565 
566  std::vector<PGlobalDigi::SiStripDigi> TIBL4Digis =
567  srcGlobalDigis->getTIBL4Digis();
568  mehSiStripn[3]->Fill((float)nTIBL4Digis);
569  for (unsigned int i = 0; i < TIBL4Digis.size(); ++i) {
570  mehSiStripADC[3]->Fill(TIBL4Digis[i].ADC);
571  mehSiStripStrip[3]->Fill(TIBL4Digis[i].STRIP);
572  }
573 
574  std::vector<PGlobalDigi::SiStripDigi> TOBL1Digis =
575  srcGlobalDigis->getTOBL1Digis();
576  mehSiStripn[4]->Fill((float)nTOBL1Digis);
577  for (unsigned int i = 0; i < TOBL1Digis.size(); ++i) {
578  mehSiStripADC[4]->Fill(TOBL1Digis[i].ADC);
579  mehSiStripStrip[4]->Fill(TOBL1Digis[i].STRIP);
580  }
581 
582  std::vector<PGlobalDigi::SiStripDigi> TOBL2Digis =
583  srcGlobalDigis->getTOBL2Digis();
584  mehSiStripn[5]->Fill((float)nTOBL2Digis);
585  for (unsigned int i = 0; i < TOBL2Digis.size(); ++i) {
586  mehSiStripADC[5]->Fill(TOBL2Digis[i].ADC);
587  mehSiStripStrip[5]->Fill(TOBL2Digis[i].STRIP);
588  }
589 
590  std::vector<PGlobalDigi::SiStripDigi> TOBL3Digis =
591  srcGlobalDigis->getTOBL3Digis();
592  mehSiStripn[6]->Fill((float)nTOBL3Digis);
593  for (unsigned int i = 0; i < TOBL3Digis.size(); ++i) {
594  mehSiStripADC[6]->Fill(TOBL3Digis[i].ADC);
595  mehSiStripStrip[6]->Fill(TOBL3Digis[i].STRIP);
596  }
597 
598  std::vector<PGlobalDigi::SiStripDigi> TOBL4Digis =
599  srcGlobalDigis->getTOBL4Digis();
600  mehSiStripn[7]->Fill((float)nTOBL4Digis);
601  for (unsigned int i = 0; i < TOBL4Digis.size(); ++i) {
602  mehSiStripADC[7]->Fill(TOBL4Digis[i].ADC);
603  mehSiStripStrip[7]->Fill(TOBL4Digis[i].STRIP);
604  }
605 
606  std::vector<PGlobalDigi::SiStripDigi> TIDW1Digis =
607  srcGlobalDigis->getTIDW1Digis();
608  mehSiStripn[8]->Fill((float)nTIDW1Digis);
609  for (unsigned int i = 0; i < TIDW1Digis.size(); ++i) {
610  mehSiStripADC[8]->Fill(TIDW1Digis[i].ADC);
611  mehSiStripStrip[8]->Fill(TIDW1Digis[i].STRIP);
612  }
613 
614  std::vector<PGlobalDigi::SiStripDigi> TIDW2Digis =
615  srcGlobalDigis->getTIDW2Digis();
616  mehSiStripn[9]->Fill((float)nTIDW2Digis);
617  for (unsigned int i = 0; i < TIDW2Digis.size(); ++i) {
618  mehSiStripADC[9]->Fill(TIDW2Digis[i].ADC);
619  mehSiStripStrip[9]->Fill(TIDW2Digis[i].STRIP);
620  }
621 
622  std::vector<PGlobalDigi::SiStripDigi> TIDW3Digis =
623  srcGlobalDigis->getTIDW3Digis();
624  mehSiStripn[10]->Fill((float)nTIDW3Digis);
625  for (unsigned int i = 0; i < TIDW3Digis.size(); ++i) {
626  mehSiStripADC[10]->Fill(TIDW3Digis[i].ADC);
627  mehSiStripStrip[10]->Fill(TIDW3Digis[i].STRIP);
628  }
629 
630  std::vector<PGlobalDigi::SiStripDigi> TECW1Digis =
631  srcGlobalDigis->getTECW1Digis();
632  mehSiStripn[11]->Fill((float)nTECW1Digis);
633  for (unsigned int i = 0; i < TECW1Digis.size(); ++i) {
634  mehSiStripADC[11]->Fill(TECW1Digis[i].ADC);
635  mehSiStripStrip[11]->Fill(TECW1Digis[i].STRIP);
636  }
637 
638  std::vector<PGlobalDigi::SiStripDigi> TECW2Digis =
639  srcGlobalDigis->getTECW2Digis();
640  mehSiStripn[12]->Fill((float)nTECW2Digis);
641  for (unsigned int i = 0; i < TECW2Digis.size(); ++i) {
642  mehSiStripADC[12]->Fill(TECW2Digis[i].ADC);
643  mehSiStripStrip[12]->Fill(TECW2Digis[i].STRIP);
644  }
645 
646  std::vector<PGlobalDigi::SiStripDigi> TECW3Digis =
647  srcGlobalDigis->getTECW3Digis();
648  mehSiStripn[13]->Fill((float)nTECW3Digis);
649  for (unsigned int i = 0; i < TECW3Digis.size(); ++i) {
650  mehSiStripADC[13]->Fill(TECW3Digis[i].ADC);
651  mehSiStripStrip[13]->Fill(TECW3Digis[i].STRIP);
652  }
653 
654  std::vector<PGlobalDigi::SiStripDigi> TECW4Digis =
655  srcGlobalDigis->getTECW4Digis();
656  mehSiStripn[14]->Fill((float)nTECW4Digis);
657  for (unsigned int i = 0; i < TECW4Digis.size(); ++i) {
658  mehSiStripADC[14]->Fill(TECW4Digis[i].ADC);
659  mehSiStripStrip[14]->Fill(TECW4Digis[i].STRIP);
660  }
661 
662  std::vector<PGlobalDigi::SiStripDigi> TECW5Digis =
663  srcGlobalDigis->getTECW5Digis();
664  mehSiStripn[15]->Fill((float)nTECW5Digis);
665  for (unsigned int i = 0; i < TECW5Digis.size(); ++i) {
666  mehSiStripADC[15]->Fill(TECW5Digis[i].ADC);
667  mehSiStripStrip[15]->Fill(TECW5Digis[i].STRIP);
668  }
669 
670  std::vector<PGlobalDigi::SiStripDigi> TECW6Digis =
671  srcGlobalDigis->getTECW6Digis();
672  mehSiStripn[16]->Fill((float)nTECW6Digis);
673  for (unsigned int i = 0; i < TECW6Digis.size(); ++i) {
674  mehSiStripADC[16]->Fill(TECW6Digis[i].ADC);
675  mehSiStripStrip[16]->Fill(TECW6Digis[i].STRIP);
676  }
677 
678  std::vector<PGlobalDigi::SiStripDigi> TECW7Digis =
679  srcGlobalDigis->getTECW7Digis();
680  mehSiStripn[17]->Fill((float)nTECW7Digis);
681  for (unsigned int i = 0; i < TECW7Digis.size(); ++i) {
682  mehSiStripADC[17]->Fill(TECW7Digis[i].ADC);
683  mehSiStripStrip[17]->Fill(TECW7Digis[i].STRIP);
684  }
685 
686  std::vector<PGlobalDigi::SiStripDigi> TECW8Digis =
687  srcGlobalDigis->getTECW8Digis();
688  mehSiStripn[18]->Fill((float)nTECW8Digis);
689  for (unsigned int i = 0; i < TECW8Digis.size(); ++i) {
690  mehSiStripADC[18]->Fill(TECW8Digis[i].ADC);
691  mehSiStripStrip[18]->Fill(TECW8Digis[i].STRIP);
692  }
693 
694  // get SiPixel info
695  std::vector<PGlobalDigi::SiPixelDigi> BRL1Digis =
696  srcGlobalDigis->getBRL1Digis();
697  mehSiPixeln[0]->Fill((float)nBRL1Digis);
698  for (unsigned int i = 0; i < BRL1Digis.size(); ++i) {
699  mehSiPixelADC[0]->Fill(BRL1Digis[i].ADC);
700  mehSiPixelRow[0]->Fill(BRL1Digis[i].ROW);
701  mehSiPixelCol[0]->Fill(BRL1Digis[i].COLUMN);
702  }
703 
704  std::vector<PGlobalDigi::SiPixelDigi> BRL2Digis =
705  srcGlobalDigis->getBRL2Digis();
706  mehSiPixeln[1]->Fill((float)nBRL2Digis);
707  for (unsigned int i = 0; i < BRL2Digis.size(); ++i) {
708  mehSiPixelADC[1]->Fill(BRL2Digis[i].ADC);
709  mehSiPixelRow[1]->Fill(BRL2Digis[i].ROW);
710  mehSiPixelCol[1]->Fill(BRL2Digis[i].COLUMN);
711  }
712 
713  std::vector<PGlobalDigi::SiPixelDigi> BRL3Digis =
714  srcGlobalDigis->getBRL3Digis();
715  mehSiPixeln[2]->Fill((float)nBRL3Digis);
716  for (unsigned int i = 0; i < BRL3Digis.size(); ++i) {
717  mehSiPixelADC[2]->Fill(BRL3Digis[i].ADC);
718  mehSiPixelRow[2]->Fill(BRL3Digis[i].ROW);
719  mehSiPixelCol[2]->Fill(BRL3Digis[i].COLUMN);
720  }
721 
722  std::vector<PGlobalDigi::SiPixelDigi> FWD1pDigis =
723  srcGlobalDigis->getFWD1pDigis();
724  mehSiPixeln[3]->Fill((float)nFWD1pDigis);
725  for (unsigned int i = 0; i < FWD1pDigis.size(); ++i) {
726  mehSiPixelADC[3]->Fill(FWD1pDigis[i].ADC);
727  mehSiPixelRow[3]->Fill(FWD1pDigis[i].ROW);
728  mehSiPixelCol[3]->Fill(FWD1pDigis[i].COLUMN);
729  }
730 
731  std::vector<PGlobalDigi::SiPixelDigi> FWD1nDigis =
732  srcGlobalDigis->getFWD1nDigis();
733  mehSiPixeln[4]->Fill((float)nFWD1nDigis);
734  for (unsigned int i = 0; i < FWD1nDigis.size(); ++i) {
735  mehSiPixelADC[4]->Fill(FWD1nDigis[i].ADC);
736  mehSiPixelRow[4]->Fill(FWD1nDigis[i].ROW);
737  mehSiPixelCol[4]->Fill(FWD1nDigis[i].COLUMN);
738  }
739 
740  std::vector<PGlobalDigi::SiPixelDigi> FWD2pDigis =
741  srcGlobalDigis->getFWD2pDigis();
742  mehSiPixeln[5]->Fill((float)nFWD2pDigis);
743  for (unsigned int i = 0; i < FWD2pDigis.size(); ++i) {
744  mehSiPixelADC[5]->Fill(FWD2pDigis[i].ADC);
745  mehSiPixelRow[5]->Fill(FWD2pDigis[i].ROW);
746  mehSiPixelCol[5]->Fill(FWD2pDigis[i].COLUMN);
747  }
748 
749  std::vector<PGlobalDigi::SiPixelDigi> FWD2nDigis =
750  srcGlobalDigis->getFWD2nDigis();
751  mehSiPixeln[6]->Fill((float)nFWD2nDigis);
752  for (unsigned int i = 0; i < FWD2nDigis.size(); ++i) {
753  mehSiPixelADC[6]->Fill(FWD2nDigis[i].ADC);
754  mehSiPixelRow[6]->Fill(FWD2nDigis[i].ROW);
755  mehSiPixelCol[6]->Fill(FWD2nDigis[i].COLUMN);
756  }
757 
758  // get DtMuon info
759  std::vector<PGlobalDigi::DTDigi> MB1Digis =
760  srcGlobalDigis->getMB1Digis();
761  mehDtMuonn[0]->Fill((float)nMB1Digis);
762  for (unsigned int i = 0; i < MB1Digis.size(); ++i) {
763  float layer = 4.0 * (MB1Digis[i].SLAYER - 1.0) + MB1Digis[i].LAYER;
764  mehDtMuonLayer[0]->Fill(layer);
765  mehDtMuonTime[0]->Fill(MB1Digis[i].TIME);
766  mehDtMuonTimevLayer[0]->Fill(layer,MB1Digis[i].TIME,1);
767  }
768 
769  std::vector<PGlobalDigi::DTDigi> MB2Digis =
770  srcGlobalDigis->getMB2Digis();
771  mehDtMuonn[1]->Fill((float)nMB2Digis);
772  for (unsigned int i = 0; i < MB2Digis.size(); ++i) {
773  float layer = 4.0 * (MB2Digis[i].SLAYER - 1.0) + MB2Digis[i].LAYER;
774  mehDtMuonLayer[1]->Fill(layer);
775  mehDtMuonTime[1]->Fill(MB2Digis[i].TIME);
776  mehDtMuonTimevLayer[1]->Fill(layer,MB2Digis[i].TIME,1);
777  }
778 
779  std::vector<PGlobalDigi::DTDigi> MB3Digis =
780  srcGlobalDigis->getMB3Digis();
781  mehDtMuonn[2]->Fill((float)nMB3Digis);
782  for (unsigned int i = 0; i < MB3Digis.size(); ++i) {
783  float layer = 4.0 * (MB3Digis[i].SLAYER - 1.0) + MB3Digis[i].LAYER;
784  mehDtMuonLayer[2]->Fill(layer);
785  mehDtMuonTime[2]->Fill(MB3Digis[i].TIME);
786  mehDtMuonTimevLayer[2]->Fill(layer,MB3Digis[i].TIME,1);
787  }
788 
789  std::vector<PGlobalDigi::DTDigi> MB4Digis =
790  srcGlobalDigis->getMB4Digis();
791  mehDtMuonn[3]->Fill((float)nMB4Digis);
792  for (unsigned int i = 0; i < MB4Digis.size(); ++i) {
793  float layer = 4.0 * (MB4Digis[i].SLAYER - 1.0) + MB4Digis[i].LAYER;
794  mehDtMuonLayer[3]->Fill(layer);
795  mehDtMuonTime[3]->Fill(MB4Digis[i].TIME);
796  mehDtMuonTimevLayer[3]->Fill(layer,MB4Digis[i].TIME,1);
797  }
798 
799  // get CSC Strip info
800  std::vector<PGlobalDigi::CSCstripDigi> CSCstripDigis =
801  srcGlobalDigis->getCSCstripDigis();
802  mehCSCStripn->Fill((float)nCSCstripDigis);
803  for (unsigned int i = 0; i < CSCstripDigis.size(); ++i) {
804  mehCSCStripADC->Fill(CSCstripDigis[i].ADC);
805  }
806 
807  // get CSC Wire info
808  std::vector<PGlobalDigi::CSCwireDigi> CSCwireDigis =
809  srcGlobalDigis->getCSCwireDigis();
810  mehCSCWiren->Fill((float)nCSCwireDigis);
811  for (unsigned int i = 0; i < CSCwireDigis.size(); ++i) {
812  mehCSCWireTime->Fill(CSCwireDigis[i].TIME);
813  }
814  if (verbosity > 0)
815  edm::LogInfo (MsgLoggerCat)
816  << "Done gathering data from event.";
817 
818  } // end loop through events
819 }
RunNumber_t run() const
Definition: EventID.h:39
EventNumber_t event() const
Definition: EventID.h:41
MonitorElement * mehDtMuonLayer[4]
SiStripDigiVector getTOBL1Digis() const
int getnTOBL1Digis() const
int getnTECW2Digis() const
int getnTIDW1Digis() const
DTDigiVector getMB1Digis() const
MonitorElement * mehEcalMultvAEE[2]
SiStripDigiVector getTIDW2Digis() const
int getnTECW4Digis() const
SiPixelDigiVector getBRL2Digis() const
int getnTIBL4Digis() const
int getnTECW5Digis() const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:579
SiPixelDigiVector getFWD1nDigis() const
int getnMB2Digis() const
SiPixelDigiVector getFWD2nDigis() const
SiStripDigiVector getTOBL4Digis() const
SiStripDigiVector getTIDW3Digis() const
SiPixelDigiVector getFWD1pDigis() const
unsigned long long EventNumber_t
MonitorElement * mehHcalAEESHE[4]
MonitorElement * mehSiPixelCol[7]
MonitorElement * mehHcalSHEvAEE[4]
int getnTECW6Digis() const
int getnHOCalDigis() const
MonitorElement * mehHcalSHE[4]
SiStripDigiVector getTECW1Digis() const
SiStripDigiVector getTIBL1Digis() const
SiPixelDigiVector getBRL3Digis() const
int getnFWD2nDigis() const
int getnMB1Digis() const
int getnTECW8Digis() const
MonitorElement * mehDtMuonTimevLayer[4]
void Fill(long long x)
SiStripDigiVector getTECW2Digis() const
ECalDigiVector getEBCalDigis() const
DTDigiVector getMB3Digis() const
int getnHBCalDigis() const
MonitorElement * mehSiStripADC[19]
int getnFWD2pDigis() const
int getnMB4Digis() const
int getnEBCalDigis() const
DTDigiVector getMB4Digis() const
MonitorElement * mehEcalSHEvAEESHE[2]
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
SiStripDigiVector getTECW8Digis() const
MonitorElement * mehEcalSHE[2]
int getnESCalDigis() const
MonitorElement * mehHcalAEE[4]
MonitorElement * mehSiPixelRow[7]
int getnBRL3Digis() const
HCalDigiVector getHFCalDigis() const
int getnBRL1Digis() const
int getnFWD1nDigis() const
MonitorElement * mehSiPixelADC[7]
int getnTECW1Digis() const
SiStripDigiVector getTECW4Digis() const
int getnTIDW2Digis() const
int getnTIBL2Digis() const
int getnTOBL2Digis() const
int getnHFCalDigis() const
bool isValid() const
Definition: HandleBase.h:74
CSCwireDigiVector getCSCwireDigis() const
SiStripDigiVector getTIBL4Digis() const
int getnTECW7Digis() const
ESCalDigiVector getESCalDigis() const
SiPixelDigiVector getFWD2pDigis() const
int getnMB3Digis() const
SiStripDigiVector getTECW7Digis() const
SiStripDigiVector getTOBL3Digis() const
SiStripDigiVector getTIBL2Digis() const
SiStripDigiVector getTIBL3Digis() const
MonitorElement * mehDtMuonTime[4]
SiStripDigiVector getTECW5Digis() const
MonitorElement * mehSiStripStrip[19]
int getnTIBL3Digis() const
edm::EventID id() const
Definition: EventBase.h:60
int getnTIDW3Digis() const
ECalDigiVector getEECalDigis() const
int getnHECalDigis() const
int getnCSCwireDigis() const
MonitorElement * mehEScalADC[3]
HCalDigiVector getHBCalDigis() const
MonitorElement * mehEcalAEE[2]
int getnFWD1pDigis() const
MonitorElement * mehEcalMaxPos[2]
int getnTECW3Digis() const
HCalDigiVector getHECalDigis() const
unsigned int RunNumber_t
edm::EDGetTokenT< PGlobalDigi > GlobalDigisSrc_Token_
MonitorElement * mehSiStripn[19]
int getnEECalDigis() const
CSCstripDigiVector getCSCstripDigis() const
HCalDigiVector getHOCalDigis() const
SiStripDigiVector getTOBL2Digis() const
SiStripDigiVector getTIDW1Digis() const
SiStripDigiVector getTECW6Digis() const
int getnCSCstripDigis() const
SiStripDigiVector getTECW3Digis() const
int getnTOBL3Digis() const
int getnTOBL4Digis() const
int getnBRL2Digis() const
int getnTIBL1Digis() const
SiPixelDigiVector getBRL1Digis() const
DTDigiVector getMB2Digis() const
void getAllStableProvenance(std::vector< StableProvenance const * > &provenances) const
Definition: Event.cc:144
void GlobalDigisHistogrammer::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  ,
edm::EventSetup const &   
)
override

Definition at line 79 of file GlobalDigisHistogrammer.cc.

References DQMStore::IBooker::book1D(), DQMStore::IBooker::bookProfile(), mps_fire::i, mehCSCStripADC, mehCSCStripn, mehCSCWiren, mehCSCWireTime, mehDtMuonLayer, mehDtMuonn, mehDtMuonTime, mehDtMuonTimevLayer, mehEcalAEE, mehEcalMaxPos, mehEcalMultvAEE, mehEcaln, mehEcalSHE, mehEcalSHEvAEESHE, mehEScalADC, mehHcalAEE, mehHcalAEESHE, mehHcaln, mehHcalSHE, mehHcalSHEvAEE, mehSiPixelADC, mehSiPixelCol, mehSiPixeln, mehSiPixelRow, mehSiStripADC, mehSiStripn, mehSiStripStrip, MonitorElement::setAxisTitle(), DQMStore::IBooker::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

80  {
81 
82 //monitor elements
83 
84 //Si Strip ***Done***
85  std::string SiStripString[19] = {"TECW1", "TECW2", "TECW3", "TECW4", "TECW5",
86  "TECW6", "TECW7", "TECW8", "TIBL1", "TIBL2", "TIBL3", "TIBL4", "TIDW1",
87  "TIDW2", "TIDW3", "TOBL1", "TOBL2", "TOBL3", "TOBL4"};
88 
89  for (int i = 0; i < 19; ++i) {
90  mehSiStripn[i] = nullptr;
91  mehSiStripADC[i] = nullptr;
92  mehSiStripStrip[i] = nullptr;
93  }
94 
95  ibooker.setCurrentFolder("GlobalDigisV/SiStrips");
96  for (int amend = 0; amend < 19; ++amend) {
97  mehSiStripn[amend] = ibooker.book1D("hSiStripn_" + SiStripString[amend],
98  SiStripString[amend] + " Digis", 500, 0., 1000.);
99 
100  mehSiStripn[amend]->setAxisTitle("Number of Digis", 1);
101  mehSiStripn[amend]->setAxisTitle("Count", 2);
102  mehSiStripADC[amend] = ibooker.book1D("hSiStripADC_" + SiStripString[amend],
103  SiStripString[amend] + " ADC", 150, 0.0, 300.);
104 
105  mehSiStripADC[amend]->setAxisTitle("ADC", 1);
106  mehSiStripADC[amend]->setAxisTitle("Count", 2);
107  mehSiStripStrip[amend] = ibooker.book1D("hSiStripStripADC_" + SiStripString[amend],
108  SiStripString[amend] + " Strip", 200, 0.0, 800.);
109  mehSiStripStrip[amend]->setAxisTitle("Strip Number", 1);
110  mehSiStripStrip[amend]->setAxisTitle("Count", 2);
111  }
112 
113  //HCal **DONE**
114  std::string HCalString[4] = {"HB", "HE", "HO","HF"};
115  float calnUpper[4] = {3000., 3000., 3000., 2000.};
116  float calnLower[4] = {2000., 2000., 2000., 1000.};
117  float SHEUpper[4] = {0.05, .05, 0.05, 20};
118  float SHEvAEEUpper[4] = {5000, 5000, 5000, 20};
119  float SHEvAEELower[4] = {-5000, -5000, -5000, -20};
120  int SHEvAEEnBins[4] = {200, 200, 200, 40};
121  double ProfileUpper[4] = {1., 1., 1., 20.};
122 
123  for (int i =0; i<4; ++i) {
124  mehHcaln[i] = nullptr;
125  mehHcalAEE[i] = nullptr;
126  mehHcalSHE[i] = nullptr;
127  mehHcalAEESHE[i] = nullptr;
128  mehHcalSHEvAEE[i] = nullptr;
129  }
130 
131  ibooker.setCurrentFolder("GlobalDigisV/HCals");
132  for (int amend = 0; amend < 4; ++amend) {
133  mehHcaln[amend] = ibooker.book1D("hHcaln_" + HCalString[amend],
134  HCalString[amend] + " digis", 1000, calnLower[amend], calnUpper[amend]);
135 
136  mehHcaln[amend]->setAxisTitle("Number of Digis", 1);
137  mehHcaln[amend]->setAxisTitle("Count", 2);
138  mehHcalAEE[amend] = ibooker.book1D("hHcalAEE_" + HCalString[amend],
139  HCalString[amend]+"Cal AEE", 60, -10., 50.);
140 
141  mehHcalAEE[amend]->setAxisTitle("Analog Equivalent Energy", 1);
142  mehHcalAEE[amend]->setAxisTitle("Count", 2);
143  mehHcalSHE[amend] = ibooker.book1D("hHcalSHE_" + HCalString[amend],
144  HCalString[amend]+"Cal SHE", 100, 0.0, SHEUpper[amend]);
145 
146  mehHcalSHE[amend]->setAxisTitle("Simulated Hit Energy", 1);
147  mehHcalSHE[amend]->setAxisTitle("Count", 2);
148  mehHcalAEESHE[amend] = ibooker.book1D("hHcalAEESHE_" + HCalString[amend],
149  HCalString[amend] + "Cal AEE/SHE", SHEvAEEnBins[amend],
150  SHEvAEELower[amend], SHEvAEEUpper[amend]);
151 
152  mehHcalAEESHE[amend]->setAxisTitle("ADC / SHE", 1);
153  mehHcalAEESHE[amend]->setAxisTitle("Count", 2);
154 
155  //************ Not sure how to do Profile ME **************
156  mehHcalSHEvAEE[amend] = ibooker.bookProfile("hHcalSHEvAEE_" + HCalString[amend],
157  HCalString[amend] + "Cal SHE vs. AEE", 60, (float)-10., (float)50., 100,
158  (float)0., (float)ProfileUpper[amend],"");
159 
160  mehHcalSHEvAEE[amend]->setAxisTitle("AEE / SHE", 1);
161  mehHcalSHEvAEE[amend]->setAxisTitle("SHE", 2);
162  }
163 
164  //Ecal **Done **
165  std::string ECalString[2] = {"EB","EE"};
166 
167  for (int i = 0; i < 2; ++i) {
168  mehEcaln[i] = nullptr;
169  mehEcalAEE[i] = nullptr;
170  mehEcalSHE[i] = nullptr;
171  mehEcalMaxPos[i] = nullptr;
172  mehEcalMultvAEE[i] = nullptr;
173  mehEcalSHEvAEESHE[i] = nullptr;
174  }
175 
176  ibooker.setCurrentFolder("GlobalDigisV/ECals");
177  for (int amend = 0; amend < 2; ++amend) {
178  mehEcaln[amend] = ibooker.book1D("hEcaln_" + ECalString[amend],
179  ECalString[amend] + " digis", 300, 1000., 4000.);
180 
181  mehEcaln[amend]->setAxisTitle("Number of Digis", 1);
182  mehEcaln[amend]->setAxisTitle("Count", 2);
183  mehEcalAEE[amend] = ibooker.book1D("hEcalAEE_" + ECalString[amend],
184  ECalString[amend] + "Cal AEE", 100, 0., 1.);
185 
186  mehEcalAEE[amend]->setAxisTitle("Analog Equivalent Energy", 1);
187  mehEcalAEE[amend]->setAxisTitle("Count", 2);
188  mehEcalSHE[amend] = ibooker.book1D("hEcalSHE_" + ECalString[amend],
189  ECalString[amend] + "Cal SHE", 50, 0., 5.);
190 
191  mehEcalSHE[amend]->setAxisTitle("Simulated Hit Energy", 1);
192  mehEcalSHE[amend]->setAxisTitle("Count", 2);
193  mehEcalMaxPos[amend] = ibooker.book1D("hEcalMaxPos_" + ECalString[amend],
194  ECalString[amend] + "Cal MaxPos", 10, 0., 10.);
195 
196  mehEcalMaxPos[amend]->setAxisTitle("Maximum Position", 1);
197  mehEcalMaxPos[amend]->setAxisTitle("Count", 2);
198 
199  //************ Not sure how to do Profile ME **************
200  mehEcalSHEvAEESHE[amend] = ibooker.bookProfile("hEcalSHEvAEESHE_" + ECalString[amend],
201  ECalString[amend] + "Cal SHE vs. AEE/SHE", 100, (float)0., (float)10., 50,
202  (float)0., (float)5., "");
203 
204  mehEcalSHEvAEESHE[amend]->setAxisTitle("AEE / SHE", 1);
205  mehEcalSHEvAEESHE[amend]->setAxisTitle("SHE", 2);
206  mehEcalMultvAEE[amend] = ibooker.bookProfile("hEcalMultvAEE_" + ECalString[amend],
207  ECalString[amend] + "Cal Multi vs. AEE", 100, (float)0., (float)10., 400,
208  (float)0., (float)4000., "");
209  mehEcalMultvAEE[amend]->setAxisTitle("Analog Equivalent Energy", 1);
210  mehEcalMultvAEE[amend]->setAxisTitle("Number of Digis", 2);
211  }
212 
213  mehEcaln[2] = nullptr;
214  mehEcaln[2] = ibooker.book1D("hEcaln_ES", "ESCAL digis", 100, 0., 500.);
215  mehEcaln[2]->setAxisTitle("Number of Digis", 1);
216  mehEcaln[2]->setAxisTitle("Count", 2);
217  std::string ADCNumber[3] = {"0", "1", "2"};
218  for (int i = 0; i < 3; ++i) {
219  mehEScalADC[i] = nullptr;
220  mehEScalADC[i] = ibooker.book1D(
221  "hEcalADC" + ADCNumber[i] + "_ES","ESCAL ADC" + ADCNumber[i], 150, 950., 1500.);
222 
223  mehEScalADC[i]->setAxisTitle("ADC" + ADCNumber[i], 1);
224  mehEScalADC[i]->setAxisTitle("Count", 2);
225  }
226 
227  //Si Pixels ***DONE***
228  std::string SiPixelString[7] = {"BRL1", "BRL2", "BRL3", "FWD1n", "FWD1p", "FWD2n",
229  "FWD2p"};
230 
231  for (int j = 0; j < 7; ++j) {
232  mehSiPixeln[j] = nullptr;
233  mehSiPixelADC[j] = nullptr;
234  mehSiPixelRow[j] = nullptr;
235  mehSiPixelCol[j] = nullptr;
236  }
237 
238  ibooker.setCurrentFolder("GlobalDigisV/SiPixels");
239  for (int amend = 0; amend < 7; ++amend) {
240  if (amend < 3) {
241  mehSiPixeln[amend] = ibooker.book1D("hSiPixeln_" + SiPixelString[amend],
242  SiPixelString[amend] + " Digis", 50, 0., 100.);
243  }
244  else {
245  mehSiPixeln[amend] = ibooker.book1D("hSiPixeln_" + SiPixelString[amend],
246  SiPixelString[amend] + " Digis", 25, 0., 50.);
247  }
248 
249  mehSiPixeln[amend]->setAxisTitle("Number of Digis", 1);
250  mehSiPixeln[amend]->setAxisTitle("Count", 2);
251  mehSiPixelADC[amend] = ibooker.book1D("hSiPixelADC_" + SiPixelString[amend],
252  SiPixelString[amend] + " ADC", 150, 0.0, 300.);
253 
254  mehSiPixelADC[amend]->setAxisTitle("ADC", 1);
255  mehSiPixelADC[amend]->setAxisTitle("Count", 2);
256  mehSiPixelRow[amend] = ibooker.book1D("hSiPixelRow_" + SiPixelString[amend],
257  SiPixelString[amend] + " Row", 100, 0.0, 100.);
258 
259  mehSiPixelRow[amend]->setAxisTitle("Row Number", 1);
260  mehSiPixelRow[amend]->setAxisTitle("Count", 2);
261  mehSiPixelCol[amend] = ibooker.book1D("hSiPixelColumn_" + SiPixelString[amend],
262  SiPixelString[amend] + " Column", 200, 0.0, 500.);
263 
264  mehSiPixelCol[amend]->setAxisTitle("Column Number", 1);
265  mehSiPixelCol[amend]->setAxisTitle("Count", 2);
266  }
267 
268  //Muons ***DONE****
269  ibooker.setCurrentFolder("GlobalDigisV/Muons");
270  std::string MuonString[4] = {"MB1", "MB2", "MB3", "MB4"};
271 
272  for (int i = 0; i < 4; ++i) {
273  mehDtMuonn[i] = nullptr;
274  mehDtMuonLayer[i] = nullptr;
275  mehDtMuonTime[i] = nullptr;
276  mehDtMuonTimevLayer[i] = nullptr;
277  }
278 
279  for (int j = 0; j < 4; ++j) {
280  mehDtMuonn[j] = ibooker.book1D("hDtMuonn_" + MuonString[j],
281  MuonString[j] + " digis", 25, 0., 50.);
282 
283  mehDtMuonn[j]->setAxisTitle("Number of Digis", 1);
284  mehDtMuonn[j]->setAxisTitle("Count", 2);
285  mehDtMuonLayer[j] = ibooker.book1D("hDtLayer_" + MuonString[j],
286  MuonString[j]+" Layer", 12, 1., 13.);
287 
288  mehDtMuonLayer[j]->setAxisTitle("4 * (SuperLayer - 1) + Layer", 1);
289  mehDtMuonLayer[j]->setAxisTitle("Count", 2);
290  mehDtMuonTime[j] = ibooker.book1D("hDtMuonTime_" + MuonString[j],
291  MuonString[j] + " Time", 300, 400., 1000.);
292 
293  mehDtMuonTime[j]->setAxisTitle("Time", 1);
294  mehDtMuonTime[j]->setAxisTitle("Count", 2);
295  mehDtMuonTimevLayer[j] = ibooker.bookProfile("hDtMuonTimevLayer_" + MuonString[j],
296  MuonString[j] + " Time vs. Layer", 12, 1., 13., 300, 400., 1000., "");
297 
298  mehDtMuonTimevLayer[j]->setAxisTitle("4 * (SuperLayer - 1) + Layer", 1);
299  mehDtMuonTimevLayer[j]->setAxisTitle("Time", 2);
300  }
301 
302 
303  // **** Have to do CSC and RPC now *****
304  //CSC
305  mehCSCStripn = nullptr;
306  mehCSCStripn = ibooker.book1D("hCSCStripn", "CSC Strip digis", 25, 0., 50.);
307  mehCSCStripn->setAxisTitle("Number of Digis", 1);
308  mehCSCStripn->setAxisTitle("Count", 2);
309 
310  mehCSCStripADC = nullptr;
311  mehCSCStripADC = ibooker.book1D("hCSCStripADC", "CSC Strip ADC", 110, 0., 1100.);
312  mehCSCStripADC->setAxisTitle("ADC", 1);
313  mehCSCStripADC->setAxisTitle("Count", 2);
314 
315  mehCSCWiren = nullptr;
316  mehCSCWiren = ibooker.book1D("hCSCWiren", "CSC Wire digis", 25, 0., 50.);
317  mehCSCWiren->setAxisTitle("Number of Digis", 1);
318  mehCSCWiren->setAxisTitle("Count", 2);
319 
320  mehCSCWireTime = nullptr;
321  mehCSCWiren = ibooker.book1D("hCSCWireTime", "CSC Wire Time", 10, 0., 10.);
322  mehCSCWiren->setAxisTitle("Time", 1);
323  mehCSCWiren->setAxisTitle("Count", 2);
324 
325 } //close bookHistograms
MonitorElement * mehDtMuonLayer[4]
MonitorElement * mehEcalMultvAEE[2]
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:113
MonitorElement * mehHcalAEESHE[4]
MonitorElement * mehSiPixelCol[7]
MonitorElement * mehHcalSHEvAEE[4]
MonitorElement * mehHcalSHE[4]
MonitorElement * mehDtMuonTimevLayer[4]
MonitorElement * mehSiStripADC[19]
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:268
MonitorElement * mehEcalSHEvAEESHE[2]
MonitorElement * mehEcalSHE[2]
MonitorElement * mehHcalAEE[4]
MonitorElement * mehSiPixelRow[7]
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:106
MonitorElement * mehSiPixelADC[7]
MonitorElement * mehDtMuonTime[4]
MonitorElement * mehSiStripStrip[19]
MonitorElement * mehEScalADC[3]
MonitorElement * mehEcalAEE[2]
MonitorElement * mehEcalMaxPos[2]
MonitorElement * mehSiStripn[19]
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)

Member Data Documentation

unsigned int GlobalDigisHistogrammer::count
private

Definition at line 135 of file GlobalDigisHistogrammer.h.

Referenced by analyze().

bool GlobalDigisHistogrammer::doOutput
private

Definition at line 79 of file GlobalDigisHistogrammer.h.

Referenced by GlobalDigisHistogrammer().

std::string GlobalDigisHistogrammer::fName
private

Definition at line 71 of file GlobalDigisHistogrammer.h.

Referenced by GlobalDigisHistogrammer().

int GlobalDigisHistogrammer::frequency
private

Definition at line 73 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and GlobalDigisHistogrammer().

bool GlobalDigisHistogrammer::getAllProvenances
private

Definition at line 75 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and GlobalDigisHistogrammer().

edm::InputTag GlobalDigisHistogrammer::GlobalDigisSrc_
private

Definition at line 81 of file GlobalDigisHistogrammer.h.

Referenced by GlobalDigisHistogrammer().

edm::EDGetTokenT<PGlobalDigi> GlobalDigisHistogrammer::GlobalDigisSrc_Token_
private

Definition at line 83 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and GlobalDigisHistogrammer().

std::string GlobalDigisHistogrammer::label
private
MonitorElement* GlobalDigisHistogrammer::mehCSCStripADC
private

Definition at line 128 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehCSCStripn
private

Definition at line 127 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehCSCWiren
private

Definition at line 129 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehCSCWireTime
private

Definition at line 130 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehDtMuonLayer[4]
private

Definition at line 121 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehDtMuonn[4]
private

Definition at line 120 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehDtMuonTime[4]
private

Definition at line 122 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehDtMuonTimevLayer[4]
private

Definition at line 123 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcalAEE[2]
private

Definition at line 88 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcalMaxPos[2]
private

Definition at line 90 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcalMultvAEE[2]
private

Definition at line 91 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcaln[3]
private

Definition at line 87 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcalSHE[2]
private

Definition at line 89 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEcalSHEvAEESHE[2]
private

Definition at line 92 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehEScalADC[3]
private

Definition at line 93 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehHcalAEE[4]
private

Definition at line 97 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehHcalAEESHE[4]
private

Definition at line 99 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehHcaln[4]
private

Definition at line 96 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehHcalSHE[4]
private

Definition at line 98 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehHcalSHEvAEE[4]
private

Definition at line 100 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiPixelADC[7]
private

Definition at line 114 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiPixelCol[7]
private

Definition at line 116 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiPixeln[7]
private

Definition at line 113 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiPixelRow[7]
private

Definition at line 115 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiStripADC[19]
private

Definition at line 107 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiStripn[19]
private

Definition at line 106 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* GlobalDigisHistogrammer::mehSiStripStrip[19]
private

Definition at line 108 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and bookHistograms().

std::string GlobalDigisHistogrammer::outputfile
private

Definition at line 78 of file GlobalDigisHistogrammer.h.

Referenced by GlobalDigisHistogrammer().

bool GlobalDigisHistogrammer::printProvenanceInfo
private

Definition at line 76 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and GlobalDigisHistogrammer().

int GlobalDigisHistogrammer::theCSCStripPedestalCount
private

Definition at line 133 of file GlobalDigisHistogrammer.h.

float GlobalDigisHistogrammer::theCSCStripPedestalSum
private

Definition at line 132 of file GlobalDigisHistogrammer.h.

int GlobalDigisHistogrammer::verbosity
private

Definition at line 72 of file GlobalDigisHistogrammer.h.

Referenced by analyze(), and GlobalDigisHistogrammer().