#include <DQM/HcalMonitorClient/interface/HcalMonitorClient.h>
Definition at line 53 of file HcalMonitorClient.h.
HcalMonitorClient::HcalMonitorClient | ( | ) |
HcalMonitorClient::HcalMonitorClient | ( | const ParameterSet & | ps | ) |
Definition at line 8 of file HcalMonitorClient.cc.
References initialize().
00008 { 00009 initialize(ps); 00010 }
HcalMonitorClient::~HcalMonitorClient | ( | ) |
Destructor.
Definition at line 15 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, dqm_db_, lat::endl(), hot_client_, laser_client_, led_client_, mui_, pedestal_client_, rechit_client_, summary_client_, and tp_client_.
00015 { 00016 00017 if (debug_>0) cout << "HcalMonitorClient: Exit ..." << endl; 00018 if( summary_client_ ) delete summary_client_; 00019 if( dataformat_client_ ) delete dataformat_client_; 00020 if( digi_client_ ) delete digi_client_; 00021 if( rechit_client_ ) delete rechit_client_; 00022 if( pedestal_client_ ) delete pedestal_client_; 00023 if( led_client_ ) delete led_client_; 00024 if( laser_client_ ) delete laser_client_; 00025 if( hot_client_ ) delete hot_client_; 00026 if( dead_client_ ) delete dead_client_; 00027 if( tp_client_ ) delete tp_client_; 00028 if( ct_client_ ) delete ct_client_; 00029 if( beam_client_) delete beam_client_; 00030 if (dqm_db_) delete dqm_db_; 00031 //if( dbe_ ) delete dbe_; 00032 if( mui_ ) delete mui_; 00033 00034 if (debug_>1) cout <<"HcalMonitorClient: Finished destructor..."<<endl; 00035 }
void HcalMonitorClient::analyze | ( | const Event & | evt, | |
const EventSetup & | es | |||
) | [virtual] |
Implements edm::EDAnalyzer.
Definition at line 446 of file HcalMonitorClient.cc.
References HcalSummaryClient::analyze(), analyze(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), edm::EventID::event(), edm::Event::id(), ievent_, ievt_, ilumisec_, HcalSummaryClient::incrementCounters(), irun_, itime_, lastResetTime_, edm::Event::luminosityBlock(), max, maxlumisec_, min, minlumisec_, mytime_, prescale(), resetAllME(), resetEvents_, resetLS_, resetTime_, edm::EventID::run(), runningStandalone_, summary_client_, edm::Event::time(), and edm::Timestamp::value().
00446 { 00447 00448 if (debug_>0) 00449 cout <<"Entered HcalMonitorClient::analyze(const Evt...)"<<endl; 00450 00451 if(resetEvents_>0 && (ievent_%resetEvents_)==0) resetAllME(); 00452 if(resetLS_>0 && (ilumisec_%resetLS_)==0) resetAllME(); 00453 int deltaT = itime_-lastResetTime_; 00454 if(resetTime_>0 && (deltaT>resetTime_)){ 00455 resetAllME(); 00456 lastResetTime_ = itime_; 00457 } 00458 00459 00460 // environment datamembers 00461 irun_ = e.id().run(); 00462 ilumisec_ = e.luminosityBlock(); 00463 ievent_ = e.id().event(); 00464 itime_ = e.time().value(); 00465 mytime_ = (e.time().value())>>32; 00466 00467 if (minlumisec_==0) 00468 minlumisec_=ilumisec_; 00469 minlumisec_=min(minlumisec_,ilumisec_); 00470 maxlumisec_=max(maxlumisec_,ilumisec_); 00471 00472 if (debug_>1) 00473 cout << "HcalMonitorClient: evts: "<< ievt_ << ", run: " << irun_ << ", LS: " << ilumisec_ << ", evt: " << ievent_ << ", time: " << itime_ << endl; 00474 00475 ievt_++; //I think we want our web pages, etc. to display this counter (the number of events used in the task) rather than nevt_ (the number of times the MonitorClient analyze function below is called) -- Jeff, 1/22/08 00476 00477 00478 // Need to increment summary client on every event, not just when prescale is called, since summary_client_ plots error rates/event. 00479 if( summary_client_ ) { 00480 summary_client_->incrementCounters(); // All this does is increment a counter. 00481 if (ievt_ ==1) { 00482 summary_client_->analyze();}} // Check if HBHE, HO, or HF is in the run at all. 00483 if ( runningStandalone_ || prescale()) return; 00484 00485 else analyze(); 00486 }
Analyze.
Definition at line 490 of file HcalMonitorClient.cc.
References HcalPedestalClient::analyze(), HcalDeadCellClient::analyze(), HcalHotCellClient::analyze(), HcalDigiClient::analyze(), HcalDataFormatClient::analyze(), HcalRecHitClient::analyze(), HcalBeamClient::analyze(), HcalLEDClient::analyze(), HcalSummaryClient::analyze(), HcalLaserClient::analyze(), HcalTrigPrimClient::analyze(), HcalCaloTowerClient::analyze(), beam_client_, GenMuonPlsPt100GeV_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), createTests(), ct_client_, dataformat_client_, dbe_, dead_client_, debug_, digi_client_, DQMOldReceiver::doMonitoring(), lat::endl(), errorSummary(), hot_client_, laser_client_, led_client_, mui_, pedestal_client_, rechit_client_, edm::CPUTimer::reset(), DQMStore::runQTests(), showTiming_, edm::CPUTimer::start(), edm::CPUTimer::stop(), summary_client_, and tp_client_.
Referenced by analyze(), and endLuminosityBlock().
00490 { 00491 if (debug_>0) 00492 cout <<"<HcalMonitorClient> Entered HcalMonitorClient::analyze()"<<endl; 00493 00494 //nevt_++; // counter not currently displayed anywhere 00495 if(debug_>1) cout<<"\nHcal Monitor Client heartbeat...."<<endl; 00496 00497 createTests(); 00498 mui_->doMonitoring(); 00499 dbe_->runQTests(); 00500 00501 if (showTiming_) 00502 { 00503 cpu_timer.reset(); cpu_timer.start(); 00504 } 00505 if( dataformat_client_ ) dataformat_client_->analyze(); 00506 if (showTiming_) 00507 { 00508 cpu_timer.stop(); 00509 if (dataformat_client_) cout <<"TIMER:: DATAFORMAT CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00510 cpu_timer.reset(); cpu_timer.start(); 00511 } 00512 00513 if( digi_client_) digi_client_->analyze(); 00514 if (showTiming_) 00515 { 00516 cpu_timer.stop(); 00517 if (digi_client_) cout <<"TIMER:: DIGI CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00518 cpu_timer.reset(); cpu_timer.start(); 00519 } 00520 00521 if( rechit_client_ ) rechit_client_->analyze(); 00522 if (showTiming_) 00523 { 00524 cpu_timer.stop(); 00525 if (rechit_client_) cout <<"TIMER:: RECHIT CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00526 cpu_timer.reset(); cpu_timer.start(); 00527 } 00528 00529 if( pedestal_client_ ) pedestal_client_->analyze(); 00530 if (showTiming_) 00531 { 00532 cpu_timer.stop(); 00533 if (pedestal_client_) cout <<"TIMER:: PEDESTAL CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00534 cpu_timer.reset(); cpu_timer.start(); 00535 } 00536 00537 if( led_client_ ) led_client_->analyze(); 00538 if (showTiming_) 00539 { 00540 cpu_timer.stop(); 00541 if (led_client_) cout <<"TIMER:: LED CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00542 cpu_timer.reset(); cpu_timer.start(); 00543 } 00544 00545 if( laser_client_ ) laser_client_->analyze(); 00546 if (showTiming_) 00547 { 00548 cpu_timer.stop(); 00549 if (laser_client_) cout <<"TIMER:: LASER CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00550 cpu_timer.reset(); cpu_timer.start(); 00551 } 00552 00553 if( hot_client_ ) hot_client_->analyze(); 00554 if (showTiming_) 00555 { 00556 cpu_timer.stop(); 00557 if (hot_client_) cout <<"TIMER:: HOT CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00558 cpu_timer.reset(); cpu_timer.start(); 00559 } 00560 00561 if( dead_client_ ) dead_client_->analyze(); 00562 if (showTiming_) 00563 { 00564 cpu_timer.stop(); 00565 if (dead_client_) cout <<"TIMER:: DEAD CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00566 cpu_timer.reset(); cpu_timer.start(); 00567 } 00568 00569 if( tp_client_ ) tp_client_->analyze(); 00570 if (showTiming_) 00571 { 00572 cpu_timer.stop(); 00573 if (tp_client_) cout <<"TIMER:: TP CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00574 cpu_timer.reset(); cpu_timer.start(); 00575 } 00576 00577 if( ct_client_ ) ct_client_->analyze(); 00578 if (showTiming_) 00579 { 00580 cpu_timer.stop(); 00581 if (ct_client_) cout <<"TIMER:: CT CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00582 cpu_timer.reset(); cpu_timer.start(); 00583 } 00584 if( beam_client_ ) beam_client_->analyze(); 00585 if (showTiming_) 00586 { 00587 cpu_timer.stop(); 00588 if (beam_client_) cout <<"TIMER:: BEAM CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00589 cpu_timer.reset(); cpu_timer.start(); 00590 } 00591 00592 if (showTiming_) 00593 { 00594 cpu_timer.stop(); 00595 if (beam_client_) cout <<"TIMER:: BEAM CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00596 cpu_timer.reset(); cpu_timer.start(); 00597 } 00598 00599 if (summary_client_ ) summary_client_->analyze(); 00600 if (showTiming_) 00601 { 00602 cpu_timer.stop(); 00603 if (summary_client_) cout <<"TIMER:: SUMMARY CLIENT ->"<<cpu_timer.cpuTime()<<endl; 00604 } 00605 00606 errorSummary(); 00607 00608 return; 00609 }
void HcalMonitorClient::beginJob | ( | const EventSetup & | c | ) | [virtual] |
BeginJob.
Reimplemented from edm::EDAnalyzer.
Definition at line 265 of file HcalMonitorClient.cc.
References beam_client_, HcalLaserClient::beginJob(), HcalDeadCellClient::beginJob(), HcalLEDClient::beginJob(), HcalPedestalClient::beginJob(), HcalBeamClient::beginJob(), HcalDataFormatClient::beginJob(), HcalTrigPrimClient::beginJob(), HcalDigiClient::beginJob(), HcalHotCellClient::beginJob(), HcalRecHitClient::beginJob(), HcalSummaryClient::beginJob(), HcalCaloTowerClient::beginJob(), GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dbe_, dead_client_, debug_, digi_client_, lat::endl(), hot_client_, ievt_, laser_client_, led_client_, pedestal_client_, rechit_client_, summary_client_, and tp_client_.
00265 { 00266 00267 if( debug_>0 ) cout << "HcalMonitorClient: beginJob" << endl; 00268 00269 ievt_ = 0; 00270 if( summary_client_ ) summary_client_->beginJob(dbe_); 00271 if( dataformat_client_ ) dataformat_client_->beginJob(); 00272 if( digi_client_ ) digi_client_->beginJob(); 00273 if( rechit_client_ ) rechit_client_->beginJob(); 00274 if( pedestal_client_ ) pedestal_client_->beginJob(c); 00275 if( led_client_ ) led_client_->beginJob(c); 00276 if( laser_client_ ) laser_client_->beginJob(c); 00277 if( hot_client_ ) hot_client_->beginJob(c); 00278 if( dead_client_ ) dead_client_->beginJob(c); 00279 if( tp_client_ ) tp_client_->beginJob(); 00280 if( ct_client_ ) ct_client_->beginJob(); 00281 if( beam_client_ ) beam_client_->beginJob(); 00282 return; 00283 }
void HcalMonitorClient::beginLuminosityBlock | ( | const edm::LuminosityBlock & | l, | |
const edm::EventSetup & | c | |||
) | [virtual] |
BeginLumiBlock.
Reimplemented from edm::EDAnalyzer.
Definition at line 424 of file HcalMonitorClient.cc.
References actonLS_, GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and prescale().
00425 { 00426 if( debug_>0 ) cout << "HcalMonitorClient: beginLuminosityBlock" << endl; 00427 if(actonLS_ && !prescale()){ 00428 // do scheduled tasks... 00429 } 00430 00431 }
void HcalMonitorClient::beginRun | ( | const Run & | r, | |
const edm::EventSetup & | c | |||
) | [virtual] |
BeginRun.
Reimplemented from edm::EDAnalyzer.
Definition at line 286 of file HcalMonitorClient.cc.
References beam_client_, HcalDataFormatClient::beginRun(), HcalPedestalClient::beginRun(), HcalHotCellClient::beginRun(), HcalDigiClient::beginRun(), HcalRecHitClient::beginRun(), HcalDeadCellClient::beginRun(), HcalLEDClient::beginRun(), HcalSummaryClient::beginRun(), HcalTrigPrimClient::beginRun(), HcalCaloTowerClient::beginRun(), HcalBeamClient::beginRun(), HcalLaserClient::beginRun(), GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, lat::endl(), hot_client_, edm::Run::id(), laser_client_, led_client_, pedestal_client_, rechit_client_, edm::RunID::run(), summary_client_, and tp_client_.
00286 { 00287 00288 if (debug_>0) 00289 cout << endl<<"HcalMonitorClient: Standard beginRun() for run " << r.id().run() << endl<<endl; 00290 00291 if( summary_client_ ) summary_client_->beginRun(); 00292 if( dataformat_client_ ) dataformat_client_->beginRun(); 00293 if( digi_client_ ) digi_client_->beginRun(); 00294 if( rechit_client_ ) rechit_client_->beginRun(); 00295 if( pedestal_client_ ) pedestal_client_->beginRun(); 00296 if( led_client_ ) led_client_->beginRun(); 00297 if( laser_client_ ) laser_client_->beginRun(); 00298 if( hot_client_ ) hot_client_->beginRun(); 00299 if( dead_client_ ) dead_client_->beginRun(); 00300 if( tp_client_ ) tp_client_->beginRun(); 00301 if( ct_client_ ) ct_client_->beginRun(); 00302 if( beam_client_ ) beam_client_->beginRun(); 00303 return; 00304 }
Create tests.
Definition at line 612 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, HcalCaloTowerClient::createTests(), HcalRecHitClient::createTests(), HcalLaserClient::createTests(), HcalBeamClient::createTests(), HcalTrigPrimClient::createTests(), HcalPedestalClient::createTests(), HcalLEDClient::createTests(), HcalDeadCellClient::createTests(), HcalHotCellClient::createTests(), HcalDigiClient::createTests(), HcalDataFormatClient::createTests(), ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, lat::endl(), hot_client_, laser_client_, led_client_, pedestal_client_, rechit_client_, and tp_client_.
Referenced by analyze(), and report().
00612 { 00613 00614 if( debug_>0 ) cout << "HcalMonitorClient: creating all tests" << endl; 00615 00616 if( dataformat_client_ ) dataformat_client_->createTests(); 00617 if( digi_client_ ) digi_client_->createTests(); 00618 if( rechit_client_ ) rechit_client_->createTests(); 00619 if( pedestal_client_ ) pedestal_client_->createTests(); 00620 if( led_client_ ) led_client_->createTests(); 00621 if( laser_client_ ) laser_client_->createTests(); 00622 if( hot_client_ ) hot_client_->createTests(); 00623 if( dead_client_ ) dead_client_->createTests(); 00624 if( tp_client_ ) tp_client_->createTests(); 00625 if( ct_client_ ) ct_client_->createTests(); 00626 if( beam_client_ ) beam_client_->createTests(); 00627 return; 00628 }
void HcalMonitorClient::dumpHistograms | ( | int & | runNum, | |
vector< TH1F * > & | hist1d, | |||
vector< TH2F * > & | hist2d | |||
) |
Definition at line 965 of file HcalMonitorClient.cc.
00965 { 00966 00967 hist1d.clear(); 00968 hist2d.clear(); 00969 00970 /* 00971 if(hot_client_) hot_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00972 if(dead_client_) dead_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00973 if(dataformat_client) dataformat_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00974 if(rechit_client_) rechit_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00975 if(digi_client_) digi_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00976 if(pedestal_client_) pedestal_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00977 if(led_client_) led_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00978 if(laser_client_) laser_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00979 if(beam_client_) beam_client_->dumpHistograms(names,meanX,meanY,rmsX,rmsY); 00980 */ 00981 return; 00982 }
EndJob.
Reimplemented from edm::EDAnalyzer.
Definition at line 307 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, HcalPedestalClient::endJob(), HcalBeamClient::endJob(), HcalDataFormatClient::endJob(), HcalDigiClient::endJob(), HcalLEDClient::endJob(), HcalDeadCellClient::endJob(), HcalSummaryClient::endJob(), HcalTrigPrimClient::endJob(), HcalRecHitClient::endJob(), HcalLaserClient::endJob(), HcalHotCellClient::endJob(), HcalCaloTowerClient::endJob(), lat::endl(), hot_client_, ievt_, laser_client_, led_client_, pedestal_client_, rechit_client_, summary_client_, and tp_client_.
Referenced by endRun().
00307 { 00308 00309 if( debug_>0 ) cout << "HcalMonitorClient: endJob, ievt = " << ievt_ << endl; 00310 00311 if (summary_client_) summary_client_->endJob(); 00312 if( dataformat_client_ ) dataformat_client_->endJob(); 00313 if( digi_client_ ) digi_client_->endJob(); 00314 if( rechit_client_ ) rechit_client_->endJob(); 00315 if( hot_client_ ) hot_client_->endJob(); 00316 if( dead_client_ ) dead_client_->endJob(); 00317 if( pedestal_client_ ) pedestal_client_->endJob(); 00318 if( led_client_ ) led_client_->endJob(); 00319 if( laser_client_ ) laser_client_->endJob(); 00320 if( tp_client_ ) tp_client_->endJob(); 00321 if( ct_client_ ) ct_client_->endJob(); 00322 if( beam_client_ ) beam_client_->endJob(); 00323 00324 /* 00327 time_t rawtime; 00328 time(&rawtime); 00329 tm* ptm = gmtime(&rawtime); 00330 char ntime[256]; 00331 sprintf(ntime,"%4d-%02d-%02d %02d:%02d:%02d.0", 00332 ptm->tm_year+1900, 00333 ptm->tm_mon, ptm->tm_mday, 00334 ptm->tm_hour, ptm->tm_min, ptm->tm_sec); 00335 00336 const char* version = "V2test"; 00337 const char* tag = "test3"; 00338 const char* comment = "Test DQM Input"; 00339 const char* detector = "HCAL"; 00340 int iovStart = irun_; 00341 int iovEnd = irun_; 00342 00343 try{ 00344 XMLPlatformUtils::Initialize(); 00345 DOMDocument* doc = dqm_db_->createDocument(); 00346 //dqm_db_->createHeader(doc, irun_, getRunStartTime()); 00347 dqm_db_->createHeader(doc,irun_,ntime); 00348 for(int i=0; i<4; i++){ 00349 HcalSubdetector subdet = HcalBarrel; 00350 if(i==1) subdet = HcalEndcap; 00351 else if(i==2) subdet = HcalForward; 00352 else if(i==3) subdet = HcalOuter; 00353 00354 for(int ieta=-42; ieta<=42; ieta++){ 00355 if(ieta==0) continue; 00356 for(int iphi=1; iphi<=73; iphi++){ 00357 for(int depth=1; depth<=4; depth++){ 00358 if(!isValidGeom(i, ieta, iphi,depth)) continue; 00359 00360 HcalDetId id(subdet,ieta,iphi,depth); 00361 HcalDQMChannelQuality::Item item; 00362 item.mId = id.rawId(); 00363 item.mAlgo = 0; 00364 item.mMasked = 0; 00365 item.mQuality = 2; 00366 item.mComment = "First DQM Channel Quality test"; 00367 dqm_db_->createDataset(doc,item,ntime,version); 00368 } 00369 } 00370 } 00371 } 00372 dqm_db_->createFooter(doc,iovStart, iovEnd,tag,detector,comment); 00373 dqm_db_->writeDocument(doc,"myTestXML.xml"); 00374 doc->release(); 00375 } 00376 catch (...){ 00377 std::cerr << "Exception" << std::endl; 00378 } 00379 XMLPlatformUtils::Terminate(); 00380 */ 00381 00382 return; 00383 }
void HcalMonitorClient::endLuminosityBlock | ( | const edm::LuminosityBlock & | l, | |
const edm::EventSetup & | c | |||
) | [virtual] |
EndLumiBlock.
Reimplemented from edm::EDAnalyzer.
Definition at line 434 of file HcalMonitorClient.cc.
References actonLS_, analyze(), GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), and prescale().
00434 { 00435 // then do your thing 00436 if( debug_>0 ) cout << "HcalMonitorClient: endLuminosityBlock" << endl; 00437 if(actonLS_ && !prescale()){ 00438 // do scheduled tasks... 00439 analyze(); 00440 } 00441 00442 return; 00443 }
void HcalMonitorClient::endRun | ( | const edm::Run & | r, | |
const edm::EventSetup & | c | |||
) | [virtual] |
EndRun.
Reimplemented from edm::EDAnalyzer.
Definition at line 386 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, enableExit_, endJob(), lat::endl(), HcalCaloTowerClient::endRun(), HcalDeadCellClient::endRun(), HcalTrigPrimClient::endRun(), HcalDataFormatClient::endRun(), HcalBeamClient::endRun(), HcalDigiClient::endRun(), HcalLEDClient::endRun(), HcalPedestalClient::endRun(), HcalLaserClient::endRun(), HcalHotCellClient::endRun(), HcalRecHitClient::endRun(), HcalSummaryClient::endRun(), Exception, hot_client_, edm::Run::id(), ievt_, inputFile_, irun_, laser_client_, led_client_, pedestal_client_, rechit_client_, report(), edm::RunID::run(), summary_client_, and tp_client_.
00386 { 00387 00388 if (debug_>0) 00389 cout << endl<<"<HcalMonitorClient> Standard endRun() for run " << r.id().run() << endl<<endl; 00390 00391 00392 if( debug_ >0) cout <<"HcalMonitorClient: processed events: "<<ievt_<<endl; 00393 00394 if (debug_>0) cout <<"==>Creating report after run end condition"<<endl; 00395 if(irun_>1){ 00396 if(inputFile_.size()!=0) report(true); 00397 else report(false); 00398 } 00399 00400 if( summary_client_) summary_client_->endRun(); 00401 if( hot_client_ ) hot_client_->endRun(); 00402 if( dead_client_ ) dead_client_->endRun(); 00403 if( dataformat_client_ ) dataformat_client_->endRun(); 00404 if( digi_client_ ) digi_client_->endRun(); 00405 if( rechit_client_ ) rechit_client_->endRun(); 00406 if( pedestal_client_ ) pedestal_client_->endRun(); 00407 if( led_client_ ) led_client_->endRun(); 00408 if( laser_client_ ) laser_client_->endRun(); 00409 if( tp_client_ ) tp_client_->endRun(); 00410 if( ct_client_ ) ct_client_->endRun(); 00411 if( beam_client_ ) beam_client_->endRun(); 00412 00413 // this is an effective way to avoid ROOT memory leaks ... 00414 if( enableExit_ ) { 00415 if (debug_>0) cout << endl << ">>> exit after End-Of-Run <<<" << endl <<endl; 00416 00417 endJob(); 00418 throw cms::Exception("End of Job") 00419 << "HcalMonitorClient: Done processing...\n"; 00420 } 00421 }
void HcalMonitorClient::errorSummary | ( | ) |
Generate error summary.
Collect test summary information
Definition at line 659 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dbe_, dead_client_, debug_, digi_client_, lat::endl(), MonitorElement::Fill(), DQMStore::get(), HcalBaseClient::getTestResults(), hot_client_, laser_client_, led_client_, me, pedestal_client_, rechit_client_, rootFolder_, and tp_client_.
Referenced by analyze(), and report().
00659 { 00660 00662 int nTests=0; 00663 map<string, vector<QReport*> > errE, errW, errO; 00664 if( hot_client_ ) hot_client_->getTestResults(nTests,errE,errW,errO); 00665 if( dead_client_ ) dead_client_->getTestResults(nTests,errE,errW,errO); 00666 if( led_client_ ) led_client_->getTestResults(nTests,errE,errW,errO); 00667 if( laser_client_ ) laser_client_->getTestResults(nTests,errE,errW,errO); 00668 if( tp_client_ ) tp_client_->getTestResults(nTests,errE,errW,errO); 00669 if( pedestal_client_ ) pedestal_client_->getTestResults(nTests,errE,errW,errO); 00670 if( digi_client_ ) digi_client_->getTestResults(nTests,errE,errW,errO); 00671 if( rechit_client_ ) rechit_client_->getTestResults(nTests,errE,errW,errO); 00672 if( dataformat_client_ ) dataformat_client_->getTestResults(nTests,errE,errW,errO); 00673 if( ct_client_ ) ct_client_->getTestResults(nTests,errE,errW,errO); 00674 if( beam_client_ ) beam_client_->getTestResults(nTests,errE,errW,errO); 00675 //For now, report the fraction of good tests.... 00676 float errorSummary = 1.0; 00677 if(nTests>0) errorSummary = 1.0 - (float(errE.size())+float(errW.size()))/float(nTests); 00678 00679 if (debug_>0) cout << "Hcal DQM Error Summary ("<< errorSummary <<"): "<< nTests << " tests, "<<errE.size() << " errors, " <<errW.size() << " warnings, "<< errO.size() << " others" << endl; 00680 00681 char meTitle[256]; 00682 sprintf(meTitle,"%sEventInfo/errorSummary",rootFolder_.c_str() ); 00683 MonitorElement* me = dbe_->get(meTitle); 00684 if(me) me->Fill(errorSummary); 00685 00686 return; 00687 }
HtmlOutput.
Definition at line 690 of file HcalMonitorClient.cc.
References baseHtmlDir_, beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, lat::endl(), HcalBaseClient::hasErrors(), HcalBaseClient::hasOther(), HcalBaseClient::hasWarnings(), hot_client_, HcalHotCellClient::htmlOutput(), HcalPedestalClient::htmlOutput(), HcalDeadCellClient::htmlOutput(), HcalBeamClient::htmlOutput(), HcalDataFormatClient::htmlOutput(), HcalCaloTowerClient::htmlOutput(), HcalRecHitClient::htmlOutput(), HcalLEDClient::htmlOutput(), HcalTrigPrimClient::htmlOutput(), HcalLaserClient::htmlOutput(), HcalSummaryClient::htmlOutput(), HcalDigiClient::htmlOutput(), ievt_, irun_, laser_client_, led_client_, maxlumisec_, minlumisec_, mytime_, pedestal_client_, rechit_client_, summary_client_, tmp, and tp_client_.
Referenced by report().
00690 { 00691 00692 if (debug_>0) cout << "Preparing HcalMonitorClient html output ..." << endl; 00693 00694 char tmp[10]; 00695 if(irun_!=-1) sprintf(tmp, "DQM_Hcal_R%09d", irun_); 00696 else sprintf(tmp, "DQM_Hcal_R%09d", 0); 00697 string htmlDir = baseHtmlDir_ + "/" + tmp + "/"; 00698 system(("/bin/mkdir -p " + htmlDir).c_str()); 00699 00700 ofstream htmlFile; 00701 htmlFile.open((htmlDir + "index.html").c_str()); 00702 00703 // html page header 00704 htmlFile << "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> " << endl; 00705 htmlFile << "<html> " << endl; 00706 htmlFile << "<head> " << endl; 00707 htmlFile << " <meta content=\"text/html; charset=ISO-8859-1\" " << endl; 00708 htmlFile << " https-equiv=\"content-type\"> " << endl; 00709 htmlFile << " <title>Hcal Data Quality Monitor</title> " << endl; 00710 htmlFile << "</head> " << endl; 00711 htmlFile << "<body> " << endl; 00712 htmlFile << "<br> " << endl; 00713 htmlFile << "<center><h1>Hcal Data Quality Monitor</h1></center>" << endl; 00714 htmlFile << "<h2>Run Number: " << endl; 00715 htmlFile << "<span style=\"color: rgb(0, 0, 153);\">" << irun_ <<"</span></h2> " << endl; 00716 htmlFile << "<h2>Events processed: " << endl; 00717 htmlFile << "<span style=\"color: rgb(0, 0, 153);\">" << ievt_ <<"</span></h2> " << endl; 00718 htmlFile << "<hr>" << endl; 00719 htmlFile << "<ul>" << endl; 00720 00721 string htmlName; 00722 if( dataformat_client_ ) { 00723 htmlName = "HcalDataFormatClient.html"; 00724 dataformat_client_->htmlOutput(irun_, htmlDir, htmlName); 00725 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00726 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Data Format Monitor</a></td>" << endl; 00727 if(dataformat_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00728 else if(dataformat_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00729 else if(dataformat_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00730 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00731 htmlFile << "</tr></table>" << endl; 00732 } 00733 if( digi_client_ ) { 00734 htmlName = "HcalDigiClient.html"; 00735 digi_client_->htmlOutput(irun_, htmlDir, htmlName); 00736 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00737 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Digi Monitor</a></td>" << endl; 00738 if(digi_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00739 else if(digi_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00740 else if(digi_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00741 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00742 htmlFile << "</tr></table>" << endl; 00743 } 00744 if( tp_client_ ) { 00745 htmlName = "HcalTrigPrimClient.html"; 00746 tp_client_->htmlOutput(irun_, htmlDir, htmlName); 00747 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00748 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">TrigPrim Monitor</a></td>" << endl; 00749 if(tp_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00750 else if(tp_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00751 else if(tp_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00752 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00753 htmlFile << "</tr></table>" << endl; 00754 } 00755 if( rechit_client_ ) { 00756 htmlName = "HcalRecHitClient.html"; 00757 rechit_client_->htmlOutput(irun_, htmlDir, htmlName); 00758 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00759 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">RecHit Monitor</a></td>" << endl; 00760 if(rechit_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00761 else if(rechit_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00762 else if(rechit_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00763 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00764 htmlFile << "</tr></table>" << endl; 00765 } 00766 if( ct_client_ ) { 00767 htmlName = "HcalCaloTowerClient.html"; 00768 ct_client_->htmlOutput(irun_, htmlDir, htmlName); 00769 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00770 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">CaloTower Monitor</a></td>" << endl; 00771 if(ct_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00772 else if(ct_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00773 else if(ct_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00774 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00775 htmlFile << "</tr></table>" << endl; 00776 } 00777 if( hot_client_ ) { 00778 htmlName = "HcalHotCellClient.html"; 00779 hot_client_->htmlOutput(irun_, htmlDir, htmlName); 00780 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00781 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Hot Cell Monitor</a></td>" << endl; 00782 if(hot_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00783 else if(hot_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00784 else if(hot_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00785 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00786 htmlFile << "</tr></table>" << endl; 00787 } 00788 00789 if( dead_client_) { 00790 htmlName = "HcalDeadCellClient.html"; 00791 dead_client_->htmlOutput(irun_, htmlDir, htmlName); 00792 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00793 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Dead Cell Monitor</a></td>" << endl; 00794 if(dead_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00795 else if(dead_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00796 else if(dead_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00797 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00798 htmlFile << "</tr></table>" << endl; 00799 } 00800 if( pedestal_client_) { 00801 htmlName = "HcalPedestalClient.html"; 00802 pedestal_client_->htmlOutput(irun_, htmlDir, htmlName); 00803 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00804 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Pedestal Monitor</a></td>" << endl; 00805 00806 if(pedestal_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00807 else if(pedestal_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00808 else if(pedestal_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00809 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00810 00811 htmlFile << "</tr></table>" << endl; 00812 } 00813 00814 if( led_client_) { 00815 htmlName = "HcalLEDClient.html"; 00816 led_client_->htmlOutput(irun_, htmlDir, htmlName); 00817 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00818 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">LED Monitor</a></td>" << endl; 00819 00820 if(led_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00821 else if(led_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00822 else if(led_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00823 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00824 00825 htmlFile << "</tr></table>" << endl; 00826 } 00827 00828 if( laser_client_) { 00829 htmlName = "HcalLaserClient.html"; 00830 laser_client_->htmlOutput(irun_, htmlDir, htmlName); 00831 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00832 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Laser Monitor</a></td>" << endl; 00833 00834 if(laser_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00835 else if(laser_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00836 else if(laser_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00837 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00838 00839 htmlFile << "</tr></table>" << endl; 00840 } 00841 00842 if( beam_client_) { 00843 htmlName = "HcalBeamClient.html"; 00844 beam_client_->htmlOutput(irun_, htmlDir, htmlName); 00845 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00846 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Beam Monitor</a></td>" << endl; 00847 00848 if(beam_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00849 else if(beam_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00850 else if(beam_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00851 else htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00852 00853 htmlFile << "</tr></table>" << endl; 00854 } 00855 if( summary_client_) { 00856 //summary_client_->analyze(); // Do analyze just before making html (which relies on analyze results) -- no longer necessary with new code? 00857 htmlName = "HcalSummaryCellClient.html"; 00858 // summary client html output function called separately within HcalSummaryClient, after analyze function 00859 summary_client_->htmlOutput(irun_, mytime_, minlumisec_, maxlumisec_, htmlDir, htmlName); 00860 htmlFile << "<table border=0 WIDTH=\"50%\"><tr>" << endl; 00861 htmlFile << "<td WIDTH=\"35%\"><a href=\"" << htmlName << "\">Summary Monitor</a></td>" << endl; 00862 //if(summary_client_->hasErrors()) htmlFile << "<td bgcolor=red align=center>This monitor task has errors.</td>" << endl; 00863 //else if(summary_client_->hasWarnings()) htmlFile << "<td bgcolor=yellow align=center>This monitor task has warnings.</td>" << endl; 00864 //else if(summary_client_->hasOther()) htmlFile << "<td bgcolor=aqua align=center>This monitor task has messages.</td>" << endl; 00865 //else 00866 htmlFile << "<td bgcolor=lime align=center>This monitor task has no problems</td>" << endl; 00867 htmlFile << "</tr></table>" << endl; 00868 } 00869 00870 htmlFile << "</ul>" << endl; 00871 00872 00873 // html page footer 00874 htmlFile << "</body> " << endl; 00875 htmlFile << "</html> " << endl; 00876 00877 htmlFile.close(); 00878 if (debug_>0) cout << "HcalMonitorClient html output done..." << endl; 00879 00880 return; 00881 }
void HcalMonitorClient::initialize | ( | const ParameterSet & | ps | ) |
get time in milliseconds, convert to minutes
Definition at line 38 of file HcalMonitorClient.cc.
References actonLS_, baseHtmlDir_, beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dbe_, dead_client_, debug_, digi_client_, dqm_db_, enableExit_, enableMonitorDaemon_, lat::endl(), DQMOldReceiver::getBEInterface(), edm::ParameterSet::getUntrackedParameter(), hot_client_, ievent_, ilumisec_, HcalDigiClient::init(), HcalDataFormatClient::init(), HcalHotCellClient::init(), HcalCaloTowerClient::init(), HcalPedestalClient::init(), HcalSummaryClient::init(), HcalRecHitClient::init(), HcalTrigPrimClient::init(), HcalLaserClient::init(), HcalDeadCellClient::init(), HcalLEDClient::init(), HcalBeamClient::init(), inputFile_, irun_, itime_, laser_client_, lastResetTime_, led_client_, maxlumisec_, minlumisec_, mui_, NULL, DQMStore::open(), pedestal_client_, prescaleEvt_, prescaleLS_, prescaleTime_, prescaleUpdate_, psTime_, rechit_client_, resetEvents_, resetLS_, resetTime_, resetUpdate_, rootFolder_, runningStandalone_, DQMStore::showDirStructure(), showTiming_, summary_client_, and tp_client_.
Referenced by HcalMonitorClient().
00038 { 00039 00040 irun_=0; ilumisec_=0; ievent_=0; itime_=0; 00041 00042 maxlumisec_=0; minlumisec_=0; 00043 00044 actonLS_=false; 00045 00046 summary_client_ = 0; 00047 dataformat_client_ = 0; digi_client_ = 0; 00048 rechit_client_ = 0; pedestal_client_ = 0; 00049 led_client_ = 0; laser_client_ = 0; hot_client_ = 0; dead_client_=0; 00050 tp_client_=0; 00051 ct_client_=0; 00052 beam_client_=0; 00053 lastResetTime_=0; 00054 00055 debug_ = ps.getUntrackedParameter<int>("debug", 0); 00056 if (debug_>0) 00057 cout << endl<<" *** Hcal Monitor Client ***" << endl<<endl; 00058 00059 if(debug_>1) cout << "HcalMonitorClient: constructor...." << endl; 00060 00061 // timing switch 00062 showTiming_ = ps.getUntrackedParameter<bool>("showTiming",false); 00063 00064 // MonitorDaemon switch 00065 enableMonitorDaemon_ = ps.getUntrackedParameter<bool>("enableMonitorDaemon", true); 00066 if (debug_>0) 00067 { 00068 if ( enableMonitorDaemon_ ) cout << "-->enableMonitorDaemon switch is ON" << endl; 00069 else cout << "-->enableMonitorDaemon switch is OFF" << endl; 00070 } 00071 00072 mui_ = new DQMOldReceiver(); 00073 dbe_ = mui_->getBEInterface(); 00074 00075 // DQM ROOT input 00076 inputFile_ = ps.getUntrackedParameter<string>("inputFile", ""); 00077 if(inputFile_.size()!=0 && debug_>0) cout << "-->reading DQM input from " << inputFile_ << endl; 00078 00079 if( ! enableMonitorDaemon_ ) { 00080 if( inputFile_.size() != 0 && dbe_!=NULL){ 00081 dbe_->open(inputFile_); 00082 dbe_->showDirStructure(); 00083 } 00084 } 00085 00086 //histogram reset freqency, update frequency, timeout 00087 resetUpdate_ = ps.getUntrackedParameter<int>("resetFreqUpdates",-1); //number of collector updates 00088 if(resetUpdate_!=-1 && debug_>0) cout << "-->Will reset histograms every " << resetUpdate_ <<" collector updates." << endl; 00089 resetEvents_ = ps.getUntrackedParameter<int>("resetFreqEvents",-1); //number of real events 00090 if(resetEvents_!=-1 && debug_>0) cout << "-->Will reset histograms every " << resetEvents_ <<" events." << endl; 00091 resetTime_ = ps.getUntrackedParameter<int>("resetFreqTime",-1); //number of minutes 00092 if(resetTime_!=-1 && debug_>0) cout << "-->Will reset histograms every " << resetTime_ <<" minutes." << endl; 00093 resetLS_ = ps.getUntrackedParameter<int>("resetFreqLS",-1); //number of lumisections 00094 if(resetLS_!=-1 && debug_>0) cout << "-->Will reset histograms every " << resetLS_ <<" lumi sections." << endl; 00095 00096 // base Html output directory 00097 baseHtmlDir_ = ps.getUntrackedParameter<string>("baseHtmlDir", ""); 00098 if (debug_>0) 00099 { 00100 if( baseHtmlDir_.size() != 0) 00101 cout << "-->HTML output will go to baseHtmlDir = '" << baseHtmlDir_ << "'" << endl; 00102 else cout << "-->HTML output is disabled" << endl; 00103 } 00104 00105 // exit on end job switch 00106 enableExit_ = ps.getUntrackedParameter<bool>("enableExit", true); 00107 if (debug_>1) 00108 { 00109 if( enableExit_ ) cout << "-->enableExit switch is ON" << endl; 00110 else cout << "-->enableExit switch is OFF" << endl; 00111 } 00112 00113 runningStandalone_ = ps.getUntrackedParameter<bool>("runningStandalone", false); 00114 if (debug_>1) 00115 { 00116 if( runningStandalone_ ) cout << "-->standAlone switch is ON" << endl; 00117 else cout << "-->standAlone switch is OFF" << endl; 00118 } 00119 // global ROOT style 00120 gStyle->Reset("Default"); 00121 gStyle->SetCanvasColor(0); 00122 gStyle->SetPadColor(0); 00123 gStyle->SetFillColor(0); 00124 gStyle->SetTitleFillColor(10); 00125 // gStyle->SetOptStat(0); 00126 gStyle->SetOptStat("ouemr"); 00127 gStyle->SetPalette(1); 00128 00129 // clients' constructors 00130 if( ps.getUntrackedParameter<bool>("SummaryClient", true) ) 00131 { 00132 if(debug_>0) 00133 cout << "===>DQM Summary Client is ON" << endl; 00134 summary_client_ = new HcalSummaryClient(); 00135 summary_client_->init(ps, dbe_,"SummaryClient"); 00136 } 00137 if( ps.getUntrackedParameter<bool>("DataFormatClient", false) ){ 00138 if(debug_>0) cout << "===>DQM DataFormat Client is ON" << endl; 00139 dataformat_client_ = new HcalDataFormatClient(); 00140 dataformat_client_->init(ps, dbe_,"DataFormatClient"); 00141 } 00142 if( ps.getUntrackedParameter<bool>("DigiClient", false) ){ 00143 if(debug_>0) 00144 cout << "===>DQM Digi Client is ON" << endl; 00145 digi_client_ = new HcalDigiClient(); 00146 digi_client_->init(ps, dbe_,"DigiClient"); 00147 } 00148 if( ps.getUntrackedParameter<bool>("RecHitClient", false) ){ 00149 if(debug_>0) cout << "===>DQM RecHit Client is ON" << endl; 00150 rechit_client_ = new HcalRecHitClient(); 00151 rechit_client_->init(ps, dbe_,"RecHitClient"); 00152 } 00153 if( ps.getUntrackedParameter<bool>("PedestalClient", false) ){ 00154 if(debug_>0) cout << "===>DQM Pedestal Client is ON" << endl; 00155 pedestal_client_ = new HcalPedestalClient(); 00156 pedestal_client_->init(ps, dbe_,"PedestalClient"); 00157 } 00158 if( ps.getUntrackedParameter<bool>("LEDClient", false) ){ 00159 if(debug_>0) cout << "===>DQM LED Client is ON" << endl; 00160 led_client_ = new HcalLEDClient(); 00161 led_client_->init(ps, dbe_,"LEDClient"); 00162 } 00163 if( ps.getUntrackedParameter<bool>("LaserClient", false) ){ 00164 if(debug_>0) cout << "===>DQM Laser Client is ON" << endl; 00165 laser_client_ = new HcalLaserClient(); 00166 laser_client_->init(ps, dbe_,"LaserClient"); 00167 } 00168 if( ps.getUntrackedParameter<bool>("HotCellClient", false) ){ 00169 if(debug_>0) cout << "===>DQM HotCell Client is ON" << endl; 00170 hot_client_ = new HcalHotCellClient(); 00171 hot_client_->init(ps, dbe_,"HotCellClient"); 00172 } 00173 if( ps.getUntrackedParameter<bool>("DeadCellClient", false) ){ 00174 if(debug_>0) cout << "===>DQM DeadCell Client is ON" << endl; 00175 dead_client_ = new HcalDeadCellClient(); 00176 dead_client_->init(ps, dbe_,"DeadCellClient"); 00177 } 00178 if( ps.getUntrackedParameter<bool>("TrigPrimClient", false) ){ 00179 if(debug_>0) cout << "===>DQM TrigPrim Client is ON" << endl; 00180 tp_client_ = new HcalTrigPrimClient(); 00181 tp_client_->init(ps, dbe_,"TrigPrimClient"); 00182 } 00183 if( ps.getUntrackedParameter<bool>("CaloTowerClient", false) ){ 00184 if(debug_>0) cout << "===>DQM CaloTower Client is ON" << endl; 00185 ct_client_ = new HcalCaloTowerClient(); 00186 ct_client_->init(ps, dbe_,"CaloTowerClient"); 00187 } 00188 if( ps.getUntrackedParameter<bool>("BeamClient", false) ){ 00189 if(debug_>0) cout << "===>DQM Beam Client is ON" << endl; 00190 beam_client_ = new HcalBeamClient(); 00191 beam_client_->init(ps, dbe_,"BeamClient"); 00192 } 00193 dqm_db_ = new HcalHotCellDbInterface(); // Is this even necessary? 00194 00195 00196 // set parameters 00197 prescaleEvt_ = ps.getUntrackedParameter<int>("diagnosticPrescaleEvt", -1); 00198 if (debug_>0) 00199 cout << "===>DQM event prescale = " << prescaleEvt_ << " event(s)"<< endl; 00200 00201 prescaleLS_ = ps.getUntrackedParameter<int>("diagnosticPrescaleLS", -1); 00202 if (debug_>0) cout << "===>DQM lumi section prescale = " << prescaleLS_ << " lumi section(s)"<< endl; 00203 if (prescaleLS_>0) actonLS_=true; 00204 00205 prescaleUpdate_ = ps.getUntrackedParameter<int>("diagnosticPrescaleUpdate", -1); 00206 if (debug_>0) cout << "===>DQM update prescale = " << prescaleUpdate_ << " update(s)"<< endl; 00207 00208 prescaleTime_ = ps.getUntrackedParameter<int>("diagnosticPrescaleTime", -1); 00209 if (debug_>0) cout << "===>DQM time prescale = " << prescaleTime_ << " minute(s)"<< endl; 00210 00211 00212 // Base folder for the contents of this job 00213 string subsystemname = ps.getUntrackedParameter<string>("subSystemFolder", "Hcal") ; 00214 if (debug_>0) cout << "===>HcalMonitor name = " << subsystemname << endl; 00215 rootFolder_ = subsystemname + "/"; 00216 00217 00218 gettimeofday(&psTime_.startTV,NULL); 00220 psTime_.startTime = (psTime_.startTV.tv_sec*1000.0+psTime_.startTV.tv_usec/1000.0); 00221 psTime_.startTime /= (60.0*1000.0); 00222 psTime_.elapsedTime=0; 00223 psTime_.updateTime=0; 00224 00225 return; 00226 }
void HcalMonitorClient::loadHistograms | ( | TFile * | infile, | |
const char * | fname | |||
) |
Definition at line 911 of file HcalMonitorClient.cc.
References lat::endl(), and Exception.
00911 { 00912 00913 if(!infile){ 00914 throw cms::Exception("Incomplete configuration") << 00915 "HcalMonitorClient: this histogram file is bad! " <<endl; 00916 return; 00917 } 00918 /* 00919 TNamed* tnd = (TNamed*)infile->Get("DQMData/HcalMonitor/RUN NUMBER"); 00920 string s =tnd->GetTitle(); 00921 irun_ = -1; 00922 sscanf((s.substr(2,s.length()-2)).c_str(), "%d", &irun_); 00923 00924 tnd = (TNamed*)infile->Get("DQMData/HcalMonitor/EVT NUMBER"); 00925 s =tnd->GetTitle(); 00926 mon_evt_ = -1; 00927 sscanf((s.substr(2,s.length()-2)).c_str(), "%d", &mon_evt_); 00928 00929 tnd = (TNamed*)infile->Get("DQMData/HcalMonitor/EVT MASK"); 00930 s =tnd->GetTitle(); 00931 int mask = -1; 00932 sscanf((s.substr(2,s.length()-2)).c_str(), "%d", &mask); 00933 00934 if(mask&HCAL_BEAM_TRIGGER) runtype_ = "BEAM RUN"; 00935 if(mask&DO_HCAL_PED_CALIBMON){ runtype_ = "PEDESTAL RUN"; 00936 if(mask&HCAL_BEAM_TRIGGER) runtype_ = "BEAM AND PEDESTALS"; 00937 } 00938 if(mask&DO_HCAL_LED_CALIBMON) runtype_ = "LED RUN"; 00939 if(mask&DO_HCAL_LASER_CALIBMON) runtype_ = "LASER RUN"; 00940 00941 status_="unknown"; 00942 tnd = (TNamed*)infile->Get("DQMData/HcalMonitor/EVT MASK"); 00943 s = tnd->GetTitle(); 00944 status_ = "unknown"; 00945 if( s.substr(2,1) == "0" ) status_ = "begin-of-run"; 00946 if( s.substr(2,1) == "1" ) status_ = "running"; 00947 if( s.substr(2,1) == "2" ) status_ = "end-of-run"; 00948 00949 00950 if(hot_client_) hot_client_->loadHistograms(infile); 00951 if(dead_client_) dead_client_->loadHistograms(infile); 00952 if(dataformat_client_) dataformat_client_->loadHistograms(infile); 00953 if(rechit_client_) rechit_client_->loadHistograms(infile); 00954 if(digi_client_) digi_client_->loadHistograms(infile); 00955 if(pedestal_client_) pedestal_client_->loadHistograms(infile); 00956 if(led_client_) led_client_->loadHistograms(infile); 00957 if(laser_client_) laser_client_->loadHistograms(infile); 00958 if(beam_client_) beam_client_->loadHistograms(infile); 00959 */ 00960 return; 00961 00962 }
void HcalMonitorClient::offlineSetup | ( | ) |
Definition at line 883 of file HcalMonitorClient.cc.
00883 { 00884 // cout << endl; 00885 // cout << " *** Hcal Generic Monitor Client, for offline operation***" << endl; 00886 // cout << endl; 00887 /* 00888 dataformat_client_ = 0; digi_client_ = 0; 00889 rechit_client_ = 0; pedestal_client_ = 0; 00890 led_client_ = 0; hot_client_ = 0; laser_client_ = 0; 00891 dead_client_=0; 00892 beam_client_=0; 00893 00894 // base Html output directory 00895 baseHtmlDir_ = "."; 00896 00897 // clients' constructors 00898 hot_client_ = new HcalHotCellClient(); 00899 dead_client_ = new HcalDeadCellClient(); 00900 dataformat_client_ = new HcalDataFormatClient(); 00901 rechit_client_ = new HcalRecHitClient(); 00902 digi_client_ = new HcalDigiClient(); 00903 pedestal_client_ = new HcalPedestalClient(); 00904 led_client_ = new HcalLEDClient(); 00905 laser_client_ = new HcalLaserClient(); 00906 beam_client_ = new HcalBeamClient(); 00907 */ 00908 return; 00909 }
bool HcalMonitorClient::prescale | ( | ) |
Boolean prescale test for this event.
Return true if this event should be skipped according to the prescale condition... Accommodate a logical "OR" of the possible tests
Definition at line 985 of file HcalMonitorClient.cc.
References GenMuonPlsPt100GeV_cfg::cout, debug_, lat::endl(), ievent_, ievt_, ilumisec_, prescaleEvt_, prescaleLS_, prescaleTime_, prescaleUpdate_, and psTime_.
Referenced by analyze(), beginLuminosityBlock(), and endLuminosityBlock().
00985 { 00988 if (debug_>1) cout <<"HcalMonitorClient::prescale"<<endl; 00989 00990 //First determine if we care... 00991 bool evtPS = prescaleEvt_>0; 00992 bool lsPS = prescaleLS_>0; 00993 bool timePS = prescaleTime_>0; 00994 bool updatePS = prescaleUpdate_>0; 00995 00996 // If no prescales are set, keep the event 00997 if(!evtPS && !lsPS && !timePS && !updatePS) return false; 00998 00999 //check each instance 01000 if(lsPS && (ilumisec_%prescaleLS_)!=0) lsPS = false; //LS veto 01001 // BAH! This doesn't work -- ievent is the raw event number, and doesn't have to be in strict numerical order. Use ievt instead. 01002 //if(evtPS && (ievent_%prescaleEvt_)!=0) evtPS = false; //evt # veto 01003 if (evtPS && (ievt_%prescaleEvt_)!=0) evtPS = false; 01004 if(timePS){ 01005 float time = psTime_.elapsedTime - psTime_.updateTime; 01006 if(time<prescaleTime_){ 01007 timePS = false; //timestamp veto 01008 psTime_.updateTime = psTime_.elapsedTime; 01009 } 01010 } 01011 // if(prescaleUpdate_>0 && (nupdates_%prescaleUpdate_)==0) updatePS=false; ///need to define what "updates" means 01012 01013 if (debug_>1) 01014 cout<<"HcalMonitor::prescale evt: "<<ievent_<<"/"<<evtPS<<", ls: "<<ilumisec_<<"/"<<lsPS<<", time: "<<(psTime_.elapsedTime - psTime_.updateTime)<<"/"<<timePS<<endl; 01015 /* 01016 printf("HcalMonitorClient::prescale evt: %d/%d, ls: %d/%d, time: %f/%d\n", 01017 ievent_,evtPS, 01018 ilumisec_,lsPS, 01019 psTime_.elapsedTime - psTime_.updateTime,timePS); 01020 */ 01021 01022 // if any criteria wants to keep the event, do so 01023 if(evtPS || lsPS || timePS) return false; //FIXME updatePS left out for now 01024 return true; 01025 }
Definition at line 230 of file HcalMonitorClient.cc.
References DQMStore::cd(), GenMuonPlsPt100GeV_cfg::cout, dbe_, debug_, DQMStore::dirExists(), lat::endl(), NULL, DQMStore::removeContents(), and DQMStore::rmdir().
00230 { 00231 if (debug_>0) cout <<"<HcalMonitorClient>removeAllME()"<<endl; 00232 if(dbe_==NULL) return; 00233 00234 // go to top directory 00235 dbe_->cd(); 00236 // remove MEs at top directory 00237 dbe_->removeContents(); 00238 // remove directory (including subdirectories recursively) 00239 if(dbe_->dirExists("Collector")) 00240 dbe_->rmdir("Collector"); 00241 if(dbe_->dirExists("Summary")) 00242 dbe_->rmdir("Summary"); 00243 return; 00244 }
Create reports.
Definition at line 631 of file HcalMonitorClient.cc.
References baseHtmlDir_, beam_client_, GenMuonPlsPt100GeV_cfg::cout, createTests(), ct_client_, dataformat_client_, dbe_, dead_client_, debug_, digi_client_, lat::endl(), errorSummary(), hot_client_, htmlOutput(), ievt_, laser_client_, led_client_, pedestal_client_, rechit_client_, HcalDigiClient::report(), HcalRecHitClient::report(), HcalLEDClient::report(), HcalHotCellClient::report(), HcalDataFormatClient::report(), HcalCaloTowerClient::report(), HcalTrigPrimClient::report(), HcalBeamClient::report(), HcalLaserClient::report(), HcalDeadCellClient::report(), HcalPedestalClient::report(), DQMStore::runQTests(), and tp_client_.
Referenced by endRun().
00631 { 00632 00633 if( debug_>0 ) 00634 cout << "HcalMonitorClient: creating report, ievt = " << ievt_ << endl; 00635 00636 if(doUpdate){ 00637 createTests(); 00638 dbe_->runQTests(); 00639 } 00640 00641 if( dataformat_client_ ) dataformat_client_->report(); 00642 if( digi_client_ ) digi_client_->report(); 00643 if( led_client_ ) led_client_->report(); 00644 if( laser_client_ ) laser_client_->report(); 00645 if( pedestal_client_ ) pedestal_client_->report(); 00646 if( rechit_client_ ) rechit_client_->report(); 00647 if( hot_client_ ) hot_client_->report(); 00648 if( dead_client_ ) dead_client_->report(); 00649 if( tp_client_ ) tp_client_->report(); 00650 if( ct_client_ ) ct_client_->report(); 00651 if( beam_client_ ) beam_client_->report(); 00652 errorSummary(); 00653 00654 //create html output if specified... 00655 if( baseHtmlDir_.size() != 0 && ievt_>0) htmlOutput(); 00656 return; 00657 }
reset all monitor elements
do a reset of all monitor elements...
Definition at line 248 of file HcalMonitorClient.cc.
References beam_client_, GenMuonPlsPt100GeV_cfg::cout, ct_client_, dataformat_client_, dead_client_, debug_, digi_client_, lat::endl(), hot_client_, laser_client_, led_client_, pedestal_client_, rechit_client_, HcalDataFormatClient::resetAllME(), HcalTrigPrimClient::resetAllME(), HcalDigiClient::resetAllME(), HcalHotCellClient::resetAllME(), HcalPedestalClient::resetAllME(), HcalDeadCellClient::resetAllME(), HcalLaserClient::resetAllME(), HcalLEDClient::resetAllME(), HcalBeamClient::resetAllME(), HcalRecHitClient::resetAllME(), HcalCaloTowerClient::resetAllME(), and tp_client_.
Referenced by analyze().
00248 { 00249 if (debug_>0) cout <<"<HcalMonitorClient> resetAllME()"<<endl; 00250 if( dataformat_client_ ) dataformat_client_->resetAllME(); 00251 if( digi_client_ ) digi_client_->resetAllME(); 00252 if( rechit_client_ ) rechit_client_->resetAllME(); 00253 if( pedestal_client_ ) pedestal_client_->resetAllME(); 00254 if( led_client_ ) led_client_->resetAllME(); 00255 if( laser_client_ ) laser_client_->resetAllME(); 00256 if( hot_client_ ) hot_client_->resetAllME(); 00257 if( dead_client_ ) dead_client_->resetAllME(); 00258 if( tp_client_ ) tp_client_->resetAllME(); 00259 if( ct_client_ ) ct_client_->resetAllME(); 00260 if( beam_client_ ) beam_client_->resetAllME(); 00261 return; 00262 }
bool HcalMonitorClient::actonLS_ [private] |
Definition at line 156 of file HcalMonitorClient.h.
Referenced by beginLuminosityBlock(), endLuminosityBlock(), and initialize().
string HcalMonitorClient::baseHtmlDir_ [private] |
Definition at line 171 of file HcalMonitorClient.h.
Referenced by htmlOutput(), initialize(), and report().
HcalBeamClient* HcalMonitorClient::beam_client_ [private] |
Definition at line 184 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
edm::CPUTimer HcalMonitorClient::cpu_timer [private] |
HcalCaloTowerClient* HcalMonitorClient::ct_client_ [private] |
Definition at line 183 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
Definition at line 174 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
DQMStore* HcalMonitorClient::dbe_ [private] |
Connection to the DQM backend.
Definition at line 147 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), errorSummary(), initialize(), removeAllME(), and report().
Definition at line 181 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::debug_ [private] |
Verbosity switch used for debugging or informational output.
Definition at line 128 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginLuminosityBlock(), beginRun(), createTests(), endJob(), endLuminosityBlock(), endRun(), errorSummary(), htmlOutput(), initialize(), prescale(), removeAllME(), report(), resetAllME(), and ~HcalMonitorClient().
HcalDigiClient* HcalMonitorClient::digi_client_ [private] |
Definition at line 175 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
HcalHotCellDbInterface* HcalMonitorClient::dqm_db_ [private] |
Definition at line 185 of file HcalMonitorClient.h.
Referenced by initialize(), and ~HcalMonitorClient().
Definition at line 142 of file HcalMonitorClient.h.
bool HcalMonitorClient::enableExit_ [private] |
bool HcalMonitorClient::enableMonitorDaemon_ [private] |
HcalHotCellClient* HcalMonitorClient::hot_client_ [private] |
Definition at line 180 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::ievent_ [private] |
Definition at line 151 of file HcalMonitorClient.h.
Referenced by analyze(), initialize(), and prescale().
int HcalMonitorClient::ievt_ [private] |
Definition at line 159 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), endJob(), endRun(), htmlOutput(), prescale(), and report().
int HcalMonitorClient::ilumisec_ [private] |
Definition at line 151 of file HcalMonitorClient.h.
Referenced by analyze(), initialize(), and prescale().
string HcalMonitorClient::inputFile_ [private] |
int HcalMonitorClient::irun_ [private] |
Definition at line 151 of file HcalMonitorClient.h.
Referenced by analyze(), endRun(), htmlOutput(), and initialize().
int HcalMonitorClient::itime_ [private] |
HcalLaserClient* HcalMonitorClient::laser_client_ [private] |
Definition at line 179 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::lastResetTime_ [private] |
HcalLEDClient* HcalMonitorClient::led_client_ [private] |
Definition at line 178 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::maxlumisec_ [private] |
Definition at line 152 of file HcalMonitorClient.h.
Referenced by analyze(), htmlOutput(), and initialize().
int HcalMonitorClient::minlumisec_ [private] |
Definition at line 152 of file HcalMonitorClient.h.
Referenced by analyze(), htmlOutput(), and initialize().
std::string HcalMonitorClient::monitorName_ [private] |
units of "updates", TBD
The name of the monitoring process which derives from this class, used to standardize filename and file structure
Definition at line 125 of file HcalMonitorClient.h.
DQMOldReceiver* HcalMonitorClient::mui_ [private] |
Definition at line 148 of file HcalMonitorClient.h.
Referenced by analyze(), initialize(), and ~HcalMonitorClient().
time_t HcalMonitorClient::mytime_ [private] |
int HcalMonitorClient::nlumisecs_ [private] |
Definition at line 177 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::prescaleEvt_ [private] |
Prescale variables for restricting the frequency of analyzer behavior.
The base class does not implement prescales. Set to -1 to be ignored.
Definition at line 118 of file HcalMonitorClient.h.
Referenced by initialize(), and prescale().
int HcalMonitorClient::prescaleLS_ [private] |
units of events
Definition at line 119 of file HcalMonitorClient.h.
Referenced by initialize(), and prescale().
int HcalMonitorClient::prescaleTime_ [private] |
units of lumi sections
Definition at line 120 of file HcalMonitorClient.h.
Referenced by initialize(), and prescale().
int HcalMonitorClient::prescaleUpdate_ [private] |
units of minutes
Definition at line 121 of file HcalMonitorClient.h.
Referenced by initialize(), and prescale().
struct { ... } HcalMonitorClient::psTime_ [private] |
Referenced by initialize(), and prescale().
Definition at line 176 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
int HcalMonitorClient::resetEvents_ [private] |
int HcalMonitorClient::resetLS_ [private] |
int HcalMonitorClient::resetTime_ [private] |
int HcalMonitorClient::resetUpdate_ [private] |
std::string HcalMonitorClient::rootFolder_ [private] |
bool HcalMonitorClient::runningStandalone_ [private] |
bool HcalMonitorClient::saved_ [private] |
Definition at line 137 of file HcalMonitorClient.h.
bool HcalMonitorClient::showTiming_ [private] |
double HcalMonitorClient::startTime |
Definition at line 141 of file HcalMonitorClient.h.
timeval HcalMonitorClient::startTV |
Definition at line 140 of file HcalMonitorClient.h.
Definition at line 173 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), endJob(), endRun(), htmlOutput(), initialize(), and ~HcalMonitorClient().
HcalTrigPrimClient* HcalMonitorClient::tp_client_ [private] |
Definition at line 182 of file HcalMonitorClient.h.
Referenced by analyze(), beginJob(), beginRun(), createTests(), endJob(), endRun(), errorSummary(), htmlOutput(), initialize(), report(), resetAllME(), and ~HcalMonitorClient().
Definition at line 143 of file HcalMonitorClient.h.
timeval HcalMonitorClient::updateTV |
Definition at line 140 of file HcalMonitorClient.h.