![]() |
![]() |
#include <CastorMonitorModule.h>
Definition at line 64 of file CastorMonitorModule.h.
CastorMonitorModule::CastorMonitorModule | ( | const edm::ParameterSet & | ps | ) |
Definition at line 19 of file CastorMonitorModule.cc.
References actonLS_, gather_cfg::cout, CQMon_, dbe_, DigiMon_, dump2database_, EDMon_, EDMonOn_, evtSel_, fedsListed_, fVerbosity, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), HIMon_, ibunch_, ievent_, ilumisec_, inputLabelDigi_, inputLabelRaw_, inputLabelRecHitCASTOR_, irun_, itime_, LedMon_, meEvtMask_, meFEDS_, meLatency_, meQuality_, meRunType_, meStatus_, NULL, cmsCodeRules::cppFunctionSkipper::operator, prescaleEvt_, prescaleLS_, prescaleTime_, prescaleUpdate_, PSMon_, psTime_, RecHitMon_, rootFolder_, DQMStore::setCurrentFolder(), CastorChannelQualityMonitor::setup(), CastorEventDisplay::setup(), CastorHIMonitor::setup(), CastorRecHitMonitor::setup(), CastorDigiMonitor::setup(), CastorPSMonitor::setup(), and showTiming_.
{ inputLabelRaw_ = ps.getParameter<edm::InputTag>("rawLabel"); inputLabelDigi_ = ps.getParameter<edm::InputTag>("digiLabel"); inputLabelRecHitCASTOR_ = ps.getParameter<edm::InputTag>("CastorRecHitLabel"); fVerbosity = ps.getUntrackedParameter<int>("debug", 0); //-- show debug showTiming_ = ps.getUntrackedParameter<bool>("showTiming", false); //-- show CPU time dump2database_ = ps.getUntrackedParameter<bool>("dump2database",false); //-- dumps output to database file EDMonOn_= ps.getUntrackedParameter<bool>("EDMonitor", false); if(fVerbosity>0) std::cout << "CastorMonitorModule Constructor (start)" << std::endl; irun_=0; ilumisec_=0; ievent_=0; itime_=0; ibunch_=0; actonLS_=false; meStatus_=0; meRunType_=0; meEvtMask_=0; meFEDS_=0; meLatency_=0; meQuality_=0; fedsListed_ = false; RecHitMon_ = NULL; DigiMon_ = NULL; LedMon_ = NULL; PSMon_ = NULL; CQMon_ = NULL; EDMon_ = NULL; HIMon_ = NULL; dbe_ = edm::Service<DQMStore>().operator->(); evtSel_ = new CastorMonitorSelector(ps); //---------------------- DigiMonitor ----------------------// if ( ps.getUntrackedParameter<bool>("DigiMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: Digi monitor flag is on...." << std::endl; DigiMon_ = new CastorDigiMonitor(); DigiMon_->setup(ps, dbe_); } //------------------------------------------------------------// if ( ps.getUntrackedParameter<bool>("RecHitMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: RecHit monitor flag is on...." << std::endl; RecHitMon_ = new CastorRecHitMonitor(); RecHitMon_->setup(ps, dbe_); } //-------------------------------------------------------------// if ( ps.getUntrackedParameter<bool>("HIMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: HI monitor flag is on...." << std::endl; HIMon_ = new CastorHIMonitor(); HIMon_->setup(ps, dbe_); } //-------------------------------------------------------------// if ( ps.getUntrackedParameter<bool>("ChannelQualityMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorChannelQualityMonitor: CQ monitor flag is on...." << std::endl; CQMon_ = new CastorChannelQualityMonitor(); CQMon_->setup(ps, dbe_); } //-------------------------------------------------------------// /* // take it away for the time being if ( ps.getUntrackedParameter<bool>("LEDMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: LED monitor flag is on...." << std::endl; LedMon_ = new CastorLEDMonitor(); LedMon_->setup(ps, dbe_); } //-------------------------------------------------------------// */ //---------------------- PSMonitor ----------------------// if ( ps.getUntrackedParameter<bool>("PSMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: PS monitor flag is on...." << std::endl; PSMon_ = new CastorPSMonitor(); PSMon_->setup(ps, dbe_); } //------------------------------------------------------------// //---------------------- EDMonitor ----------------------// if ( ps.getUntrackedParameter<bool>("EDMonitor", false) ) { if(fVerbosity>0) std::cout << "CastorMonitorModule: ED monitor flag is on...." << std::endl; EDMon_ = new CastorEventDisplay(); EDMon_->setup(ps, dbe_); } //------------------------------------------------------------// prescaleEvt_ = ps.getUntrackedParameter<int>("diagnosticPrescaleEvt", -1); if(fVerbosity>0) std::cout << "===>CastorMonitor event prescale = " << prescaleEvt_ << " event(s)"<< std::endl; prescaleLS_ = ps.getUntrackedParameter<int>("diagnosticPrescaleLS", -1); if(fVerbosity>0) std::cout << "===>CastorMonitor lumi section prescale = " << prescaleLS_ << " lumi section(s)"<< std::endl; if (prescaleLS_>0) actonLS_=true; prescaleUpdate_ = ps.getUntrackedParameter<int>("diagnosticPrescaleUpdate", -1); if(fVerbosity>0) std::cout << "===>CastorMonitor update prescale = " << prescaleUpdate_ << " update(s)"<< std::endl; prescaleTime_ = ps.getUntrackedParameter<int>("diagnosticPrescaleTime", -1); if(fVerbosity>1) std::cout << "===>CastorMonitor time prescale = " << prescaleTime_ << " minute(s)"<< std::endl; std::string subsystemname = ps.getUntrackedParameter<std::string>("subSystemFolder", "Castor") ; if(fVerbosity>0) std::cout << "===>CastorMonitor name = " << subsystemname << std::endl; rootFolder_ = subsystemname + "/"; if ( dbe_ != NULL ){ dbe_->setCurrentFolder(rootFolder_); } gettimeofday(&psTime_.updateTV,NULL); psTime_.updateTime = (psTime_.updateTV.tv_sec*1000.0+psTime_.updateTV.tv_usec/1000.0); psTime_.updateTime /= 1000.0; psTime_.elapsedTime=0; psTime_.vetoTime=psTime_.updateTime; if(fVerbosity>0) std::cout << "CastorMonitorModule Constructor (end)" << std::endl; }
CastorMonitorModule::~CastorMonitorModule | ( | ) |
Definition at line 165 of file CastorMonitorModule.cc.
{ // if (dbe_){ // if(DigiMon_!=NULL) { DigiMon_->clearME();} // if(RecHitMon_!=NULL) { RecHitMon_->clearME();} // if(LedMon_!=NULL) { LedMon_->clearME();} // if(PSMon_!=NULL) { LedMon_->clearME();} // if(HIMon_!=NULL) { HIMon_->clearME();} // dbe_->setCurrentFolder(rootFolder_); // dbe_->removeContents(); // } // // if(DigiMon_!=NULL) { delete DigiMon_; DigiMon_=NULL; } // if(RecHitMon_!=NULL) { delete RecHitMon_; RecHitMon_=NULL; } // if(HIMon_!=NULL) { delete HIMon_; HIMon_=NULL; } // if(LedMon_!=NULL) { delete LedMon_; LedMon_=NULL; } // delete evtSel_; evtSel_ = NULL; }
void CastorMonitorModule::analyze | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | eventSetup | ||
) | [protected, virtual] |
Implements edm::EDAnalyzer.
Definition at line 355 of file CastorMonitorModule.cc.
References edm::EventBase::bunchCrossing(), CastorEventProduct, conditions_, gather_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), CQMon_, dbe_, DigiMon_, DO_CASTOR_PED_CALIBMON, DO_CASTOR_RECHITMON, EDMon_, EDMonOn_, edm::EventID::event(), MonitorElement::Fill(), fPedestalNSigmaAverage, fVerbosity, edm::EventSetup::get(), edm::Event::getByLabel(), MonitorElement::getTH2F(), HIMon_, ibunch_, edm::EventBase::id(), ievent_, ievt_, ievt_pre_, ilumisec_, inputLabelDigi_, inputLabelRecHitCASTOR_, irun_, itime_, listEMap, edm::EventBase::luminosityBlock(), meEVT_, meEvtMask_, meLatency_, meStatus_, nevt_, NULL, prescale(), CastorPSMonitor::processEvent(), CastorHIMonitor::processEvent(), CastorRecHitMonitor::processEvent(), CastorDigiMonitor::processEvent(), CastorEventDisplay::processEvent(), CastorChannelQualityMonitor::processEvent(), PSMon_, psTime_, RecHitMon_, edm::CPUTimer::reset(), edm::EventID::run(), showTiming_, edm::CPUTimer::start(), edm::CPUTimer::stop(), edm::EventBase::time(), and edm::Timestamp::value().
{ using namespace edm; irun_ = iEvent.id().run(); ilumisec_ = iEvent.luminosityBlock(); ievent_ = iEvent.id().event(); itime_ = iEvent.time().value(); ibunch_ = iEvent.bunchCrossing(); if (fVerbosity>0) { std::cout << "==> CastorMonitorModule: evts: "<< nevt_ << ", run: " << irun_ << ", LS: " << ilumisec_ << std::endl; std::cout << " evt: " << ievent_ << ", time: " << itime_ <<"\t counter = "<< ievt_pre_<< "\t total count = "<<ievt_<<std::endl; } ievt_++; ievt_pre_++; // need to increment counter before calling prescale if(prescale()) return; meLatency_->Fill(psTime_.elapsedTime); int evtMask=DO_CASTOR_RECHITMON|DO_CASTOR_PED_CALIBMON; // add in DO_HCAL_TPMON, DO_HCAL_CTMON ?(in CastorMonitorSelector.h) /* FIX // int trigMask=0; if(mtccMon_==NULL){ evtSel_->processEvent(e); evtMask = evtSel_->getEventMask(); // trigMask = evtSel_->getTriggerMask(); } */ if ( dbe_ ){ meStatus_->Fill(1); meEvtMask_->Fill(evtMask); } bool rawOK_ = true; bool digiOK_ = true; bool rechitOK_ = true; //-- TAKE IT AWAY for the time being //edm::Handle<FEDRawDataCollection> RawData; //iEvent.getByLabel(inputLabelRaw_,RawData); //if (!RawData.isValid()) { // rawOK_=false; //} /* edm::Handle<HcalUnpackerReport> report; iEvent.getByType(report); if (!report.isValid()) { rawOK_=false; } else { if(!fedsListed_){ const std::vector<int> feds = (*report).getFedsUnpacked(); for(unsigned int f=0; f<feds.size(); f++){ meFEDS_->Fill(feds[f]); } fedsListed_ = true; } } */ //---------------------------------------------------------------// //------------------- try to get digis ------------------------// //---------------------------------------------------------------// edm::Handle<CastorDigiCollection> CastorDigi; iEvent.getByLabel(inputLabelDigi_,CastorDigi); if (!CastorDigi.isValid()) { digiOK_=false; } //if ( checkCASTOR_ ) // CheckCastorStatus(*RawData,*report,*readoutMap_,*CastorDigi); //---------------------------------------------------------------// //------------------- try to get RecHits ------------------------// //---------------------------------------------------------------// edm::Handle<CastorRecHitCollection> CastorHits; iEvent.getByLabel(inputLabelRecHitCASTOR_,CastorHits); if (!CastorHits.isValid()) { rechitOK_ = false; } if(ievt_%10 == 0) { TH2F* hCastorEventProduct=CastorEventProduct->getTH2F(); hCastorEventProduct->SetBinContent(1,1,int(rawOK_)); hCastorEventProduct->SetBinContent(2,1,int(digiOK_)); hCastorEventProduct->SetBinContent(3,1,int(rechitOK_)); if(fVerbosity>0) { std::cout << " RAW Data ==> " << rawOK_<< std::endl; std::cout << " Digis ==> " << digiOK_<< std::endl; std::cout << " RecHits ==> " << rechitOK_<< std::endl; } } //------------------------------------------------------------// //---------------- Run the configured tasks ------------------// //-------------- protect against missing products -----------// //-----------------------------------------------------------// if (showTiming_){ cpu_timer.reset(); cpu_timer.start(); } //----------------- Digi monitor task ------------------// // if((DigiMon_!=NULL) && (evtMask&DO_CASTOR_PED_CALIBMON) && digiOK_) if(digiOK_) DigiMon_->processEvent(*CastorDigi,*conditions_); if (showTiming_){ cpu_timer.stop(); if (DigiMon_!=NULL) std::cout <<"TIMER:: DIGI MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } //----------------- Rec Hit monitor task -------------------------// // if((RecHitMon_ != NULL) && (evtMask&DO_CASTOR_RECHITMON) && rechitOK_) if(rechitOK_) RecHitMon_->processEvent(*CastorHits); if (showTiming_){ cpu_timer.stop(); if (RecHitMon_!=NULL) std::cout <<"TIMER:: RECHIT MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } //----------------- Channel Quality Monitor task -------------------------// if(rechitOK_) CQMon_->processEvent(*CastorHits); if (showTiming_){ cpu_timer.stop(); if (CQMon_!=NULL) std::cout <<"TIMER:: CHANNELQUALITY MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } /* //---------------- LED monitor task ------------------------// // if((LedMon_!=NULL) && (evtMask&DO_HCAL_LED_CALIBMON) && digiOK_) if(digiOK_) LedMon_->processEvent(*CastorDigi,*conditions_); if (showTiming_){ cpu_timer.stop(); if (LedMon_!=NULL) std::cout <<"TIMER:: LED MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } */ //---------------- Pulse Shape monitor task ------------------------// edm::ESHandle<CastorElectronicsMap> refEMap; eventSetup.get<CastorElectronicsMapRcd>().get(refEMap); const CastorElectronicsMap* myRefEMap = refEMap.product(); listEMap = myRefEMap->allPrecisionId(); if(digiOK_) PSMon_->processEvent(*CastorDigi,*conditions_, listEMap, ibunch_, fPedestalNSigmaAverage); if (showTiming_) { cpu_timer.stop(); if (PSMon_!=NULL) std::cout <<"TIMER:: PULSE SHAPE ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } //---------------- EventDisplay monitor task ------------------------// edm::ESHandle<CaloGeometry> caloGeometry; eventSetup.get<CaloGeometryRecord>().get(caloGeometry); if(rechitOK_ && EDMonOn_) EDMon_->processEvent(*CastorHits, *caloGeometry); if (showTiming_){ cpu_timer.stop(); if (EDMon_!=NULL) std::cout <<"TIMER:: EVENTDISPLAY MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } //----------------- Heavy Ion monitor task -------------------------// if(rechitOK_ && digiOK_ ) HIMon_->processEvent(*CastorHits, *CastorDigi, *conditions_); if (showTiming_){ cpu_timer.stop(); if (HIMon_!=NULL) std::cout <<"TIMER:: HI MONITOR ->"<<cpu_timer.cpuTime()<<std::endl; cpu_timer.reset(); cpu_timer.start(); } if(fVerbosity>0 && ievt_%100 == 0) std::cout << "CastorMonitorModule: processed " << ievt_ << " events" << std::endl; meEVT_->Fill(ievt_); return; }
void CastorMonitorModule::beginJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 189 of file CastorMonitorModule.cc.
References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookInt(), CastorEventProduct, gather_cfg::cout, dbe_, MonitorElement::Fill(), fVerbosity, MonitorElement::getTH2F(), ievt_, ievt_pre_, meCASTOR_, meEVT_, meEvtMask_, meFEDS_, meLatency_, meQuality_, meRunType_, meStatus_, NULL, rootFolder_, and DQMStore::setCurrentFolder().
{ ievt_ = 0; ievt_pre_=0; if(fVerbosity>0) std::cout << "CastorMonitorModule::beginJob (start)" << std::endl; if ( dbe_ != NULL ){ dbe_->setCurrentFolder(rootFolder_+"CastorEventProducts"); meEVT_ = dbe_->bookInt("Event Number"); CastorEventProduct =dbe_->book2D("CastorEventProduct","CastorEventProduct",3,0,3,1,0,1); TH2F* hCastorEventProduct =CastorEventProduct->getTH2F(); hCastorEventProduct->GetXaxis()->SetBinLabel(1,"RawData"); hCastorEventProduct->GetXaxis()->SetBinLabel(2,"CastorDigi"); hCastorEventProduct->GetXaxis()->SetBinLabel(3,"CastorRecHits"); hCastorEventProduct->GetYaxis()->SetBinLabel(1,"Status"); hCastorEventProduct->SetBinContent(1,1,-1); hCastorEventProduct->SetBinContent(2,1,-1); hCastorEventProduct->SetBinContent(3,1,-1); hCastorEventProduct->SetOption("textcolz"); dbe_->setCurrentFolder(rootFolder_+"DQM Job Status" ); meStatus_ = dbe_->bookInt("STATUS"); meRunType_ = dbe_->bookInt("RUN TYPE"); meEvtMask_ = dbe_->bookInt("EVT MASK"); meFEDS_ = dbe_->book1D("FEDs Unpacked","FEDs Unpacked",100,660,759); meCASTOR_ = dbe_->bookInt("CASTORpresent"); meLatency_ = dbe_->book1D("Process Latency","Process Latency",2000,0,10); meQuality_ = dbe_->book1D("Quality Status","Quality Status",100,0,1); meStatus_->Fill(0); meRunType_->Fill(-1); meEvtMask_->Fill(-1); meCASTOR_->Fill(0); } else{ if(fVerbosity>0) std::cout << "CastorMonitorModule::beginJob - NO DQMStore service" << std::endl; } if(fVerbosity>0) std::cout << "CastorMonitorModule::beginJob (end)" << std::endl; return; }
void CastorMonitorModule::beginLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | eventSetup | ||
) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 281 of file CastorMonitorModule.cc.
References actonLS_, and prescale().
void CastorMonitorModule::beginRun | ( | const edm::Run & | iRun, |
const edm::EventSetup & | eventSetup | ||
) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 241 of file CastorMonitorModule.cc.
References conditions_, gather_cfg::cout, dbPedestals, fedsListed_, fPedestalNSigmaAverage, fVerbosity, edm::EventSetup::get(), CastorPedestal::getWidth(), edm::ESHandleBase::isValid(), HcalCastorDetId::module(), reset(), HcalCastorDetId::sector(), and mathSSE::sqrt().
{ fedsListed_ = false; reset(); iSetup.get<CastorDbRecord>().get(conditions_); iSetup.get<CastorPedestalsRcd>().get(dbPedestals); if(!dbPedestals.isValid() && fVerbosity>0) std::cout << "CASTOR has no CastorPedestals in the CondDB !!!" << std::endl; float sigma_averaged; unsigned int iChannel = 0; std::vector<DetId> channels = dbPedestals->getAllChannels(); for (std::vector<DetId>::iterator ch=channels.begin(); ch!=channels.end(); ch++) { const CastorPedestal * pedestals_mean = dbPedestals->getValues(*ch); sigma_averaged = 0.; for (short unsigned int iCapId = 0; iCapId < 4; iCapId++){ sigma_averaged += sqrt(pedestals_mean->getWidth(iCapId)); }; fPedestalNSigmaAverage[HcalCastorDetId(*ch).module()-1][HcalCastorDetId(*ch).sector()-1] = sigma_averaged/4; iChannel++; }; if(iChannel<224 && fVerbosity>0) std::cout << "There are less that 224 channels in CastorPedestalsRcd record !!!" << std::endl; return; }
void CastorMonitorModule::CheckCastorStatus | ( | const FEDRawDataCollection & | rawraw, |
const HcalUnpackerReport & | report, | ||
const CastorElectronicsMap & | emap, | ||
const CastorDigiCollection & | castordigi | ||
) | [protected] |
Definition at line 630 of file CastorMonitorModule.cc.
{ //vector<int> fedUnpackList; // for (int i=FEDNumbering::getHcalFEDIds().first; i<=FEDNumbering::getHcalFEDIds().second; i++) // { // fedUnpackList.push_back(i); // } // for (std::vector<int>::const_iterator i=fedUnpackList.begin(); i!=fedUnpackList.end();++i) // { // const FEDRawData& fed = RawData.FEDData(*i); // if (fed.size()<12) continue; //-- Was 16 ! // const HcalDCCHeader* dccHeader=(const HcalDCCHeader*)(fed.data()); // if (!dccHeader) return; // int dccid=dccHeader->getSourceId(); // ////---- Castor FED numbering of DCCs= [690 -693] // if (dccid >= 690 && dccid <=693){ // if ( CastorDigi.size()>0){ // meCASTOR_->Fill(1); // } // else {meCASTOR_->Fill(0); } // } // else{ meCASTOR_->Fill(-1); } // } return; }
void CastorMonitorModule::endJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 314 of file CastorMonitorModule.cc.
References CQMon_, DigiMon_, CastorBaseMonitor::done(), CastorDigiMonitor::done(), CastorLEDMonitor::done(), EDMon_, HIMon_, LedMon_, NULL, PSMon_, and RecHitMon_.
{ //if ( meStatus_ ) meStatus_->Fill(2); if(RecHitMon_!=NULL) RecHitMon_->done(); if(DigiMon_!=NULL) DigiMon_->done(); if(LedMon_!=NULL) LedMon_->done(); if(CQMon_!=NULL) CQMon_->done(); if(PSMon_!=NULL) PSMon_->done(); if(EDMon_!=NULL) EDMon_->done(); if(HIMon_!=NULL) RecHitMon_->done(); /* LEAVE IT OUT FOR THE MOMENT // TO DUMP THE OUTPUT TO DATABASE FILE if (dump2database_){ } */ return; }
void CastorMonitorModule::endLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | eventSetup | ||
) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 293 of file CastorMonitorModule.cc.
References actonLS_, and prescale().
void CastorMonitorModule::endRun | ( | const edm::Run & | run, |
const edm::EventSetup & | eventSetup | ||
) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 303 of file CastorMonitorModule.cc.
References gather_cfg::cout, DigiMon_, fVerbosity, and NULL.
{ if (fVerbosity>0) std::cout <<"CastorMonitorModule::endRun(...) "<<std::endl; if (DigiMon_!=NULL) //************ DigiMon_->fillPedestalHistos(); //FIX return; }
bool CastorMonitorModule::prescale | ( | ) | [protected] |
in seconds
Definition at line 576 of file CastorMonitorModule.cc.
References gather_cfg::cout, fVerbosity, ievent_, ievt_pre_, ilumisec_, NULL, prescaleEvt_, prescaleLS_, prescaleTime_, prescaleUpdate_, psTime_, and cond::rpcobgas::time.
Referenced by analyze(), beginLuminosityBlock(), and endLuminosityBlock().
{ if (fVerbosity>0) std::cout <<"CastorMonitorModule::prescale"<<std::endl; gettimeofday(&psTime_.updateTV,NULL); double time = (psTime_.updateTV.tv_sec*1000.0+psTime_.updateTV.tv_usec/1000.0); time/= (1000.0); psTime_.elapsedTime = time - psTime_.updateTime; psTime_.updateTime = time; bool evtPS = prescaleEvt_>0; bool lsPS = prescaleLS_>0; bool timePS = prescaleTime_>0; bool updatePS = prescaleUpdate_>0; if(!evtPS && !lsPS && !timePS && !updatePS) { return false; } if(lsPS && (ilumisec_%prescaleLS_)!=0) lsPS = false; //-- LS veto //if(evtPS && (ievent_%prescaleEvt_)!=0) evtPS = false; //evt # veto if (evtPS && (ievt_pre_%prescaleEvt_)!=0) evtPS = false; if(timePS) { double elapsed = (psTime_.updateTime - psTime_.vetoTime)/60.0; if(elapsed<prescaleTime_){ timePS = false; //-- timestamp veto psTime_.vetoTime = psTime_.updateTime; } } // if(prescaleUpdate_>0 && (nupdates_%prescaleUpdate_)==0) updatePS=false; ///need to define what "updates" means if (fVerbosity>0) { std::cout<<"CastorMonitorModule::prescale evt: "<<ievent_<<"/"<<evtPS<<", "; std::cout <<"ls: "<<ilumisec_<<"/"<<lsPS<<","; std::cout <<"time: "<<psTime_.updateTime - psTime_.vetoTime<<"/"<<timePS<<std::endl; } if(evtPS || lsPS || timePS) return false; return true; }
void CastorMonitorModule::reset | ( | void | ) | [protected] |
Definition at line 339 of file CastorMonitorModule.cc.
References CQMon_, DigiMon_, EDMon_, HIMon_, LedMon_, NULL, PSMon_, RecHitMon_, CastorHIMonitor::reset(), CastorRecHitMonitor::reset(), CastorPSMonitor::reset(), CastorDigiMonitor::reset(), CastorLEDMonitor::reset(), CastorEventDisplay::reset(), and CastorChannelQualityMonitor::reset().
Referenced by beginRun().
bool CastorMonitorModule::actonLS_ [private] |
Definition at line 159 of file CastorMonitorModule.h.
Referenced by beginLuminosityBlock(), CastorMonitorModule(), and endLuminosityBlock().
Definition at line 187 of file CastorMonitorModule.h.
Referenced by analyze(), and beginJob().
Definition at line 232 of file CastorMonitorModule.h.
bool CastorMonitorModule::checkCASTOR_ [private] |
Definition at line 219 of file CastorMonitorModule.h.
Definition at line 202 of file CastorMonitorModule.h.
Referenced by analyze(), and beginRun().
edm::CPUTimer CastorMonitorModule::cpu_timer [private] |
Definition at line 143 of file CastorMonitorModule.h.
Referenced by analyze().
Definition at line 193 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), and reset().
DQMStore* CastorMonitorModule::dbe_ [private] |
Definition at line 155 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), and CastorMonitorModule().
Definition at line 206 of file CastorMonitorModule.h.
Referenced by beginRun().
std::map<uint32_t, std::vector<HcalCastorDetId> > CastorMonitorModule::DCCtoCell [private] |
Definition at line 174 of file CastorMonitorModule.h.
CastorDigiMonitor* CastorMonitorModule::DigiMon_ [private] |
Definition at line 194 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), endRun(), and reset().
bool CastorMonitorModule::dump2database_ [private] |
Definition at line 230 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule().
CastorEventDisplay* CastorMonitorModule::EDMon_ [private] |
Definition at line 197 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), and reset().
bool CastorMonitorModule::EDMonOn_ [private] |
Definition at line 227 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
Definition at line 148 of file CastorMonitorModule.h.
Definition at line 191 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule().
bool CastorMonitorModule::fedsListed_ [private] |
Definition at line 164 of file CastorMonitorModule.h.
Referenced by beginRun(), and CastorMonitorModule().
float CastorMonitorModule::fPedestalNSigmaAverage[14][16] [private] |
Definition at line 211 of file CastorMonitorModule.h.
Referenced by analyze(), and beginRun().
int CastorMonitorModule::fVerbosity [private] |
Definition at line 131 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), beginRun(), CastorMonitorModule(), endRun(), and prescale().
CastorHIMonitor* CastorMonitorModule::HIMon_ [private] |
Definition at line 198 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), and reset().
std::map<std::pair <int,int> , std::vector<HcalCastorDetId> > CastorMonitorModule::HTRtoCell [private] |
Definition at line 176 of file CastorMonitorModule.h.
int CastorMonitorModule::ibunch_ [private] |
Definition at line 158 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
int CastorMonitorModule::ievent_ [private] |
Definition at line 158 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), and prescale().
int CastorMonitorModule::ievt_ [private] |
Definition at line 162 of file CastorMonitorModule.h.
Referenced by analyze(), and beginJob().
int CastorMonitorModule::ievt_pre_ [private] |
Definition at line 163 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), and prescale().
int CastorMonitorModule::ilumisec_ [private] |
Definition at line 158 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), and prescale().
Definition at line 168 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
Definition at line 167 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule().
Definition at line 169 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
int CastorMonitorModule::irun_ [private] |
Definition at line 158 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
int CastorMonitorModule::itime_ [private] |
Definition at line 158 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
CastorLEDMonitor* CastorMonitorModule::LedMon_ [private] |
Definition at line 195 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule(), endJob(), and reset().
std::vector<HcalGenericDetId> CastorMonitorModule::listEMap [private] |
Definition at line 213 of file CastorMonitorModule.h.
Referenced by analyze().
ofstream CastorMonitorModule::m_logFile [private] |
Definition at line 216 of file CastorMonitorModule.h.
MonitorElement* CastorMonitorModule::meCASTOR_ [private] |
Definition at line 224 of file CastorMonitorModule.h.
Referenced by beginJob().
MonitorElement* CastorMonitorModule::meEVT_ [private] |
Definition at line 200 of file CastorMonitorModule.h.
Referenced by analyze(), and beginJob().
MonitorElement* CastorMonitorModule::meEvtMask_ [private] |
Definition at line 183 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meFEDS_ [private] |
Definition at line 180 of file CastorMonitorModule.h.
Referenced by beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meLatency_ [private] |
Definition at line 185 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meQuality_ [private] |
Definition at line 186 of file CastorMonitorModule.h.
Referenced by beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meRunType_ [private] |
Definition at line 182 of file CastorMonitorModule.h.
Referenced by beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meStatus_ [private] |
Definition at line 181 of file CastorMonitorModule.h.
Referenced by analyze(), beginJob(), and CastorMonitorModule().
MonitorElement* CastorMonitorModule::meTrigger_ [private] |
Definition at line 184 of file CastorMonitorModule.h.
std::string CastorMonitorModule::monitorName_ [private] |
Definition at line 128 of file CastorMonitorModule.h.
std::map<HcalCastorDetId, unsigned int> CastorMonitorModule::myquality_ [private] |
Definition at line 231 of file CastorMonitorModule.h.
int CastorMonitorModule::nevt_ [private] |
Definition at line 134 of file CastorMonitorModule.h.
Referenced by analyze().
int CastorMonitorModule::nlumisecs_ [private] |
Definition at line 135 of file CastorMonitorModule.h.
int CastorMonitorModule::prescaleEvt_ [private] |
Definition at line 121 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule(), and prescale().
int CastorMonitorModule::prescaleLS_ [private] |
Definition at line 122 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule(), and prescale().
int CastorMonitorModule::prescaleTime_ [private] |
Definition at line 123 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule(), and prescale().
int CastorMonitorModule::prescaleUpdate_ [private] |
Definition at line 124 of file CastorMonitorModule.h.
Referenced by CastorMonitorModule(), and prescale().
CastorPSMonitor* CastorMonitorModule::PSMon_ [private] |
Definition at line 196 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), and reset().
struct { ... } CastorMonitorModule::psTime_ [private] |
Referenced by analyze(), CastorMonitorModule(), and prescale().
const CastorElectronicsMap* CastorMonitorModule::readoutMap_ [private] |
Definition at line 203 of file CastorMonitorModule.h.
Definition at line 192 of file CastorMonitorModule.h.
Referenced by analyze(), CastorMonitorModule(), endJob(), and reset().
std::string CastorMonitorModule::rootFolder_ [private] |
Definition at line 160 of file CastorMonitorModule.h.
Referenced by beginJob(), and CastorMonitorModule().
bool CastorMonitorModule::saved_ [private] |
Definition at line 136 of file CastorMonitorModule.h.
bool CastorMonitorModule::showTiming_ [private] |
Definition at line 142 of file CastorMonitorModule.h.
Referenced by analyze(), and CastorMonitorModule().
timeval CastorMonitorModule::startTV |
Definition at line 147 of file CastorMonitorModule.h.
std::map<uint32_t, std::vector<HcalCastorDetId> >::iterator CastorMonitorModule::thisDCC [private] |
Definition at line 175 of file CastorMonitorModule.h.
std::map<std::pair <int,int> , std::vector<HcalCastorDetId> >::iterator CastorMonitorModule::thisHTR [private] |
Definition at line 177 of file CastorMonitorModule.h.
Definition at line 150 of file CastorMonitorModule.h.
timeval CastorMonitorModule::updateTV |
Definition at line 147 of file CastorMonitorModule.h.
Definition at line 149 of file CastorMonitorModule.h.