#include <CastorRecHitMonitor.h>
Public Member Functions | |
CastorRecHitMonitor () | |
void | processEvent (const CastorRecHitCollection &castorHits) |
void | reset () |
void | setup (const edm::ParameterSet &ps, DQMStore *dbe) |
~CastorRecHitMonitor () | |
Private Attributes | |
struct { | |
MonitorElement * meCastorRecHitsOccupancy | |
std::map< HcalCastorDetId, MonitorElement * > meRECHIT_E | |
MonitorElement * meRECHIT_E_all | |
MonitorElement * meRECHIT_E_modules | |
MonitorElement * meRECHIT_E_sectors | |
MonitorElement * meRECHIT_MAP_CHAN_E | |
MonitorElement * meRECHIT_MAP_CHAN_E2D | |
MonitorElement * meRECHIT_N_modules | |
MonitorElement * meRECHIT_N_sectors | |
std::map< HcalCastorDetId, MonitorElement * > meRECHIT_T | |
MonitorElement * meRECHIT_T_all | |
} | castorHists |
bool | doPerChannel_ |
int | ievt_ |
MonitorElement * | meEVT_ |
Definition at line 9 of file CastorRecHitMonitor.h.
CastorRecHitMonitor::CastorRecHitMonitor | ( | ) |
Definition at line 16 of file CastorRecHitMonitor.cc.
References doPerChannel_, and ievt_.
{ doPerChannel_ = true; // occThresh_ = 1; ievt_=0; }
CastorRecHitMonitor::~CastorRecHitMonitor | ( | ) |
Definition at line 25 of file CastorRecHitMonitor.cc.
{ }
void CastorRecHitMonitor::processEvent | ( | const CastorRecHitCollection & | castorHits | ) |
Definition at line 140 of file CastorRecHitMonitor.cc.
References CastorBaseMonitor::baseFolder_, edm::SortedCollection< T, SORT >::begin(), castorHists, gather_cfg::cout, CastorBaseMonitor::cpu_timer, edm::CPUTimer::cpuTime(), doPerChannel_, edm::SortedCollection< T, SORT >::end(), relval_parameters_module::energy, MonitorElement::Fill(), CastorBaseMonitor::fVerbosity, ExpressReco_HICollisions_FallBack::id, ievt_, CastorBaseMonitor::m_dbe, meEVT_, module::module(), edm::CPUTimer::reset(), CastorBaseMonitor::showTiming, edm::SortedCollection< T, SORT >::size(), edm::CPUTimer::start(), edm::CPUTimer::stop(), and cond::rpcobgas::time.
Referenced by CastorMonitorModule::analyze().
{ if(fVerbosity>0) std::cout << "==>CastorRecHitMonitor::processEvent !!!"<< std::endl; meEVT_->Fill(ievt_); if(!m_dbe) { if(fVerbosity>0) std::cout <<"CastorRecHitMonitor::processEvent => DQMStore is not instantiated !!!"<<std::endl; return; } CastorRecHitCollection::const_iterator CASTORiter; if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } if(castorHits.size()>0) { if(fVerbosity>0) std::cout << "==>CastorRecHitMonitor::processEvent: castorHits.size()>0 !!!" << std::endl; for (CASTORiter=castorHits.begin(); CASTORiter!=castorHits.end(); ++CASTORiter) { float energy = CASTORiter->energy(); float time = CASTORiter->time(); HcalCastorDetId id(CASTORiter->detid().rawId()); //float zside = id.zside(); float module = id.module(); float sector = id.sector(); //-- get module & sector from id float channel = 16*(module-1)+sector; //-- define channel if (energy>1.0) { castorHists.meRECHIT_E_all->Fill(energy); castorHists.meRECHIT_T_all->Fill(time); castorHists.meRECHIT_MAP_CHAN_E->Fill(channel,energy); castorHists.meRECHIT_MAP_CHAN_E2D->Fill(module-1,sector-1,energy); castorHists.meRECHIT_E_modules->Fill(module-1, energy); castorHists.meRECHIT_E_sectors->Fill(sector-1, energy); castorHists.meRECHIT_N_modules->Fill(module-1); castorHists.meRECHIT_N_sectors->Fill(sector-1); castorHists.meCastorRecHitsOccupancy->Fill(module-1,sector-1); } if(ievt_%100 == 0 && doPerChannel_) CastorRecHitPerChan::perChanHists<CastorRecHit>(*CASTORiter, castorHists.meRECHIT_E, castorHists.meRECHIT_T, m_dbe, baseFolder_); } } else { if(fVerbosity>0) std::cout<<"CastorRecHitMonitor::processEvent NO Castor RecHits !!!"<<std::endl; } if (showTiming) { cpu_timer.stop(); std::cout << " TIMER::CastorRecHit -> " << cpu_timer.cpuTime() << std::endl; cpu_timer.reset(); cpu_timer.start(); } ievt_++; return; }
void CastorRecHitMonitor::reset | ( | void | ) |
Definition at line 28 of file CastorRecHitMonitor.cc.
Referenced by CastorMonitorModule::reset().
{ }
void CastorRecHitMonitor::setup | ( | const edm::ParameterSet & | ps, |
DQMStore * | dbe | ||
) | [virtual] |
Reimplemented from CastorBaseMonitor.
Definition at line 36 of file CastorRecHitMonitor.cc.
References CastorBaseMonitor::baseFolder_, DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookInt(), castorHists, gather_cfg::cout, doPerChannel_, CastorBaseMonitor::fVerbosity, edm::ParameterSet::getUntrackedParameter(), ievt_, CastorBaseMonitor::m_dbe, meEVT_, NULL, CastorBaseMonitor::rootFolder_, and DQMStore::setCurrentFolder().
Referenced by CastorMonitorModule::CastorMonitorModule().
{ CastorBaseMonitor::setup(ps,dbe); baseFolder_ = rootFolder_+"CastorRecHitMonitor"; if(fVerbosity>0) std::cout << "CastorRecHitMonitor::setup (start)" << std::endl; if ( ps.getUntrackedParameter<bool>("RecHitsPerChannel", false) ){ doPerChannel_ = true; } ievt_=0; if ( m_dbe !=NULL ) { m_dbe->setCurrentFolder(baseFolder_); meEVT_ = m_dbe->bookInt("RecHit Event Number"); // meEVT_->Fill(ievt_); castorHists.meRECHIT_E_all = m_dbe->book1D("CastorRecHit Energies- above threshold on RecHitEnergy","CastorRecHit Energies- above threshold on RecHitEnergy",150,0,150); castorHists.meRECHIT_T_all = m_dbe->book1D("CastorRecHit Times- above threshold on RecHitEnergy","CastorRecHit Times- above threshold on RecHitEnergy",300,-100,100); castorHists.meRECHIT_MAP_CHAN_E = m_dbe->book1D("CastorRecHit Energy in each channel- above threshold","CastorRecHit Energy in each channel- above threshold",224,0,224); castorHists.meRECHIT_MAP_CHAN_E2D = m_dbe->book2D("CastorRecHit 2D Energy Map- above threshold","CastorRecHit 2D Energy Map- above threshold",14, 0,14, 16, 0,16); castorHists.meRECHIT_E_modules = m_dbe->book1D("CastorRecHit Energy in modules- above threshold","CastorRecHit Energy in modules- above threshold", 14, 0, 14); castorHists.meRECHIT_E_sectors = m_dbe->book1D("CastorRecHit Energy in sectors- above threshold","CastorRecHit Energy in sectors- above threshold", 16, 0, 16); castorHists.meRECHIT_N_modules = m_dbe->book1D("Number of CastorRecHits in modules- above threshold","Number of CastorRecHits in modules- above threshold", 14, 0, 14); castorHists.meRECHIT_N_sectors = m_dbe->book1D("Number of CastorRecHits in sectors- above threshold","Number of CastorRecHits in sectors- above threshold", 16, 0, 16); castorHists.meCastorRecHitsOccupancy = m_dbe->book2D("CastorRecHits occupancy- sector vs module", "CastorRecHits occupancy- sector vs module", 14, 0.5,14.5, 16, 0.5,16.5); TH2F* CastorRecHitsOccupancy =castorHists.meCastorRecHitsOccupancy->getTH2F(); CastorRecHitsOccupancy->GetXaxis()->SetTitle("module"); CastorRecHitsOccupancy->GetYaxis()->SetTitle("sector"); } else{ if(fVerbosity>0) std::cout << "CastorRecHitMonitor::setup - NO DQMStore service" << std::endl; } if(fVerbosity>0) std::cout << "CastorRecHitMonitor::setup (end)" << std::endl; return; }
struct { ... } CastorRecHitMonitor::castorHists [private] |
Referenced by processEvent(), and setup().
bool CastorRecHitMonitor::doPerChannel_ [private] |
Definition at line 20 of file CastorRecHitMonitor.h.
Referenced by CastorRecHitMonitor(), processEvent(), and setup().
int CastorRecHitMonitor::ievt_ [private] |
Definition at line 22 of file CastorRecHitMonitor.h.
Referenced by CastorRecHitMonitor(), processEvent(), and setup().
Definition at line 34 of file CastorRecHitMonitor.h.
MonitorElement* CastorRecHitMonitor::meEVT_ [private] |
Definition at line 38 of file CastorRecHitMonitor.h.
Referenced by processEvent(), and setup().
Definition at line 35 of file CastorRecHitMonitor.h.
Definition at line 26 of file CastorRecHitMonitor.h.
Definition at line 30 of file CastorRecHitMonitor.h.
Definition at line 31 of file CastorRecHitMonitor.h.
Definition at line 28 of file CastorRecHitMonitor.h.
Definition at line 29 of file CastorRecHitMonitor.h.
Definition at line 32 of file CastorRecHitMonitor.h.
Definition at line 33 of file CastorRecHitMonitor.h.
Definition at line 35 of file CastorRecHitMonitor.h.
Definition at line 27 of file CastorRecHitMonitor.h.