30 LogVerbatim(
"DTDQM|DTMonitorClient|DTSummaryClients") <<
"[DTSummaryClients]: Constructor";
37 LogVerbatim (
"DTDQM|DTMonitorClient|DTSummaryClients") <<
"DTSummaryClients: analyzed " <<
nevents <<
" events";
43 LogVerbatim (
"DTDQM|DTMonitorClient|DTSummaryClients") <<
"[DTSummaryClients]: endJob";
68 streams <<
"DT_Wheel" <<
wheel;
69 string meName = streams.str();
80 LogVerbatim(
"DTDQM|DTMonitorClient|DTSummaryClients")
81 <<
"[DTSummaryClients]: End of LS transition, performing the DQM client operation" << endl;
86 for(
int ii = 0;
ii != 5; ++
ii) {
90 bool noDTData =
false;
94 MonitorElement * dataIntegritySummary = igetter.
get(
"DT/00-DataIntegrity/DataIntegritySummary");
95 if(dataIntegritySummary !=
nullptr) {
99 for(
int sect = 1; sect != 13; ++sect) {
104 if(nDisablesROS == 12) {
110 if(nDisabledFED == 5) {
116 LogError(
"DTDQM|DTMonitorClient|DTSummaryClients")
117 <<
"Data Integrity Summary not found with name: DT/00-DataIntegrity/DataIntegritySummary" <<endl;
120 double totalStatus = 0;
122 bool occupancyFound =
true;
129 str <<
"DT/01-Digi/OccupancySummary_W" <<
wheel;
131 if(wheelOccupancySummary !=
nullptr) {
132 int nFailingChambers = 0;
133 for(
int sector=1; sector<=12; sector++){
136 LogTrace(
"DTDQM|DTMonitorClient|DTSummaryClients")
137 <<
"Wheel: " << wheel <<
" Stat: " <<
station <<
" Sect: " << sector <<
" status: " << chamberStatus << endl;
138 if(chamberStatus != 4) {
143 LogTrace(
"DTDQM|DTMonitorClient|DTSummaryClients") <<
" sector (" << sector <<
") status on the map is: " 149 totalStatus += (48.-nFailingChambers)/48.;
151 occupancyFound =
false;
152 LogError(
"DTDQM|DTMonitorClient|DTSummaryClients")<<
" Wheel Occupancy Summary not found with name: " << str.str() << endl;
157 if(occupancyFound && !noDTData)
DTSummaryClients(const edm::ParameterSet &ps)
Constructor.
~DTSummaryClients() override
Destructor.
MonitorElement * get(const std::string &path)
MonitorElement * summaryReport
MonitorElement * summaryReportMap
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
void setCurrentFolder(const std::string &fullpath)
MonitorElement * book2D(Args &&...args)
double getBinContent(int binx) const
get content of bin (1-D)
std::vector< MonitorElement * > theSummaryContents
MonitorElement * bookFloat(Args &&...args)
void dqmEndLuminosityBlock(DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) override
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)