25 std::vector<std::string> dummy;
50 if (Nlumiblocks_<=0) Nlumiblocks_=1000;
63 std::cout <<
"<HcalBaseMonitor> WARNING: etaMax_ value of "<<
etaMax_<<
" exceeds maximum allowed value of 44.5"<<std::endl;
64 std::cout <<
" Value being set back to 44.5."<<std::endl;
65 std::cout <<
" Additional code changes are necessary to allow value of "<<
etaMax_<<std::endl;
71 std::cout <<
"<HcalBaseMonitor> WARNING: etaMin_ value of "<<etaMin_<<
" exceeds minimum allowed value of 44.5"<<std::endl;
72 std::cout <<
" Value being set back to -44.5."<<std::endl;
73 std::cout <<
" Additional code changes are necessary to allow value of "<<etaMin_<<std::endl;
215 unsigned int badc = atoi(
badCells_[
i].c_str());
216 if(
id.rawId() == badc)
return true;
230 unsigned int badc = atoi(
badCells_[
i].c_str());
232 int etabin=
CalcEtaBin(
id.subdet(),
id.ieta(),
id.depth());
250 std::stringstream
name;
252 std::stringstream unitname;
253 std::stringstream unittitle;
257 unittitle<<
"No Units";
261 unitname<<
" "<<Units;
265 h=
m_dbe->
book2D((
"All "+name.str()+unitname.str()).c_str(),
266 (name.str() +
" for all HCAL ("+unittitle.str().c_str()+
")"),
297 std::stringstream
name;
299 std::stringstream unitname;
300 std::stringstream unittitle;
304 unittitle<<
"No Units";
308 unitname<<
" "<<Units;
312 h=
m_dbe->
book2D((
"All "+name.str()+unitname.str()).c_str(),
313 (name.str() +
" for all HCAL ("+unittitle.str().c_str()+
")"),
346 std::stringstream
name;
349 std::stringstream unitname;
350 std::stringstream unittitle;
354 unittitle<<
"No Units";
358 unitname<<
" "<<Units;
363 hh.push_back(
m_dbe->
book2D((
"HB HF Depth 1 "+name.str()+unitname.str()).c_str(),
364 (name.str()+
" Depth 1 -- HB & HF only ("+unittitle.str().c_str()+
")"),
367 hh.push_back(
m_dbe->
book2D((
"HB HF Depth 2 "+name.str()+unitname.str()).c_str(),
368 (name.str()+
" Depth 2 -- HB & HF only ("+unittitle.str().c_str()+
")"),
371 hh.push_back(
m_dbe->
book2D((
"HE Depth 3 "+name.str()+unitname.str()).c_str(),
372 (name.str()+
" Depth 3 -- HE ("+unittitle.str().c_str()+
")"),
375 hh.push_back(
m_dbe->
book2D((
"HO ZDC "+name.str()+unitname.str()).c_str(),
376 (name.str()+
" -- HO & ZDC ("+unittitle.str().c_str()+
")"),
379 hh.push_back(
m_dbe->
book2D((
"HE Depth 1 "+name.str()+unitname.str()).c_str(),
380 (name.str()+
" Depth 1 -- HE only ("+unittitle.str().c_str()+
")"),
383 hh.push_back(
m_dbe->
book2D((
"HE Depth 2 "+name.str()+unitname.str()).c_str(),
384 (name.str()+
" Depth 2 -- HE only ("+unittitle.str().c_str()+
")"),
387 for (
unsigned int i=0;
i<hh.size();++
i)
389 hh[
i]->setAxisTitle(
"i#eta",1);
390 hh[
i]->setAxisTitle(
"i#phi",2);
405 int nbinsx,
int lowboundx,
int highboundx,
406 int nbinsy,
int lowboundy,
int highboundy)
419 std::stringstream
name;
421 std::stringstream unitname;
422 std::stringstream unittitle;
426 unittitle<<
"No Units";
430 unitname<<
" "<<Units;
434 h=
m_dbe->
book2D((
"All "+name.str()+unitname.str()).c_str(),
435 (name.str() +
" for all HCAL ("+unittitle.str().c_str()+
")"),
436 nbinsx, lowboundx, highboundx,
437 nbinsy, lowboundy, highboundy);
440 nbinsx, lowboundx, highboundx,
441 nbinsy, lowboundy, highboundy);
455 int nbinsx,
int lowboundx,
int highboundx,
456 int nbinsy,
int lowboundy,
int highboundy)
471 std::stringstream
name;
474 std::stringstream unitname;
475 std::stringstream unittitle;
479 unittitle<<
"No Units";
483 unitname<<
" "<<Units;
488 hh.push_back(
m_dbe->
book2D((
"HB HF Depth 1 "+name.str()+unitname.str()).c_str(),
489 (name.str()+
" Depth 1 -- HB & HF only ("+unittitle.str().c_str()+
")"),
490 nbinsx, lowboundx, highboundx,
491 nbinsy, lowboundy, highboundy));
492 hh.push_back(
m_dbe->
book2D((
"HB HF Depth 2 "+name.str()+unitname.str()).c_str(),
493 (name.str()+
" Depth 2 -- HB & HF only ("+unittitle.str().c_str()+
")"),
494 nbinsx, lowboundx, highboundx,
495 nbinsy, lowboundy, highboundy));
496 hh.push_back(
m_dbe->
book2D((
"HE Depth 3 "+name.str()+unitname.str()).c_str(),
497 (name.str()+
" Depth 3 -- HE ("+unittitle.str().c_str()+
")"),
498 nbinsx, lowboundx, highboundx,
499 nbinsy, lowboundy, highboundy));
500 hh.push_back(
m_dbe->
book2D((
"HO ZDC "+name.str()+unitname.str()).c_str(),
501 (name.str()+
" -- HO & ZDC ("+unittitle.str().c_str()+
")"),
502 nbinsx, lowboundx, highboundx,
503 nbinsy, lowboundy, highboundy));
504 hh.push_back(
m_dbe->
book2D((
"HE Depth 1 "+name.str()+unitname.str()).c_str(),
505 (name.str()+
" Depth 1 -- HE only ("+unittitle.str().c_str()+
")"),
506 nbinsx, lowboundx, highboundx,
507 nbinsy, lowboundy, highboundy));
508 hh.push_back(
m_dbe->
book2D((
"HE Depth 2 "+name.str()+unitname.str()).c_str(),
509 (name.str()+
" Depth 2 -- HE only ("+unittitle.str().c_str()+
")"),
510 nbinsx, lowboundx, highboundx,
511 nbinsy, lowboundy, highboundy));
531 std::stringstream
name;
534 std::stringstream unitname;
535 std::stringstream unittitle;
539 unittitle<<
"No Units";
543 unitname<<
" "<<Units;
548 h=
m_dbe->
book1D((
"All "+name.str()+unitname.str()).c_str(),
549 (name.str() +
" for all HCAL ("+unittitle.str().c_str()+
")"),
550 Nbins,lowbound,highbound);
574 std::stringstream
name;
576 std::stringstream unitname;
577 std::stringstream unittitle;
581 unittitle<<
"No Units";
585 unitname<<
" "<<Units;
590 hh.push_back(
m_dbe->
book1D((
"HB "+name.str()+unitname.str()).c_str(),
591 (name.str()+
" HB ("+unittitle.str().c_str()+
")"),
592 Nbins,lowbound,highbound));
593 hh.push_back(
m_dbe->
book1D((
"HE "+name.str()+unitname.str()).c_str(),
594 (name.str()+
" HE ("+unittitle.str().c_str()+
")"),
595 Nbins,lowbound,highbound));
596 hh.push_back(
m_dbe->
book1D((
"HO "+name.str()+unitname.str()).c_str(),
597 (name.str()+
" HO ("+unittitle.str().c_str()+
")"),
598 Nbins,lowbound,highbound));
599 hh.push_back(
m_dbe->
book1D((
"HF "+name.str()+unitname.str()).c_str(),
600 (name.str()+
" HF ("+unittitle.str().c_str()+
")"),
601 Nbins,lowbound,highbound));
603 for (
unsigned int i=0;
i<hh.size();++
i)
605 hh[
i]->setAxisTitle(unitname.str().c_str(),1);
619 for (
unsigned int i=0;
i<hh.size();++
i)
621 TH2F*
histo=hh[
i]->getTH2F();
622 histo->SetMinimum(min);
623 histo->SetMaximum(max);
630 for (
unsigned int i=0;
i<hh.size();++
i)
632 TH1F*
histo=hh[
i]->getTH1F();
633 histo->SetMinimum(min);
634 histo->SetMaximum(max);
void setupDepthHists1D(MonitorElement *&h, std::vector< MonitorElement * > &hh, std::string Name, std::string Units, int lowbound, int highbound, int Nbins)
T getUntrackedParameter(std::string const &, T const &) const
void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * ProblemsVsLB_HE
std::vector< int > AllowedCalibTypes_
MonitorElement * ProblemsVsLB_HO
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
void endLuminosityBlock()
MonitorElement * ProblemsVsLB_HBHEHF
void setup(DQMStore *&m_dbe, std::string Name, std::string Units="")
EtaPhiHists ProblemCellsByDepth
MonitorElement * meTOTALEVT_
void LumiBlockUpdate(int lb)
MonitorElement * ProblemsVsLB_HF
std::vector< MonitorElement * > depth
void removeContents(void)
erase all monitoring elements in current directory (not including subfolders);
const T & max(const T &a, const T &b)
MonitorElement * ProblemsVsLB
MonitorElement * ProblemsVsLB_HB
MonitorElement * ProblemCells
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
void setupDepthHists2D(MonitorElement *&h, std::vector< MonitorElement * > &hh, std::string Name, std::string Units)
virtual void periodicReset()
void beginLuminosityBlock(int lb)
void setMinMaxHists1D(std::vector< MonitorElement * > &hh, double min, double max)
void setMinMaxHists2D(std::vector< MonitorElement * > &hh, double min, double max)
void SetupEtaPhiHists(MonitorElement *&h, EtaPhiHists &hh, std::string Name, std::string Units)
std::vector< std::string > badCells_
int CalcEtaBin(int subdet, int ieta, int depth)
bool vetoCell(HcalDetId &id)
virtual ~HcalBaseMonitor()
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void Reset(void)
reset ME (ie. contents, errors, etc)
void setCurrentFolder(const std::string &fullpath)
virtual void setup(const edm::ParameterSet &ps, DQMStore *dbe)