55 for (
int i = 0;
i < 36;
i++) {
124 for (
int i = 0;
i < 36;
i++) {
170 for (
int i = 0;
i < 36;
i++) {
184 meEBRecHitEnergy_[
i] =
dqmStore_->
bookProfile2D(name, name, 85, 0., 85., 20, 0., 20., 100, 0., 100.,
"s");
196 name =
"EBOT rec hit spectrum";
200 name =
"EBOT digi occupancy";
204 name =
"EBOT digi occupancy projection eta";
208 name =
"EBOT digi occupancy projection phi";
213 name =
"EBOT rec hit occupancy";
217 name =
"EBOT rec hit occupancy projection eta";
221 name =
"EBOT rec hit occupancy projection phi";
226 name =
"EBOT rec hit thr occupancy";
230 name =
"EBOT rec hit thr occupancy projection eta";
234 name =
"EBOT rec hit thr occupancy projection phi";
239 name =
"EBOT TP digi occupancy";
243 name =
"EBOT TP digi occupancy projection eta";
247 name =
"EBOT TP digi occupancy projection phi";
252 name =
"EBOT TP digi thr occupancy";
256 name =
"EBOT TP digi thr occupancy projection eta";
260 name =
"EBOT TP digi thr occupancy projection phi";
265 name =
"EBOT test pulse digi occupancy";
270 name =
"EBOT laser digi occupancy";
275 name =
"EBOT pedestal digi occupancy";
286 if ( !
init_ )
return;
293 for (
int i = 0;
i < 36;
i++) {
383 int runtype = dcchItr->getRunType();
401 edm::LogWarning(
"EBOccupancyTask") <<
"EcalRawDataCollection not available";
408 int nebd = digis->size();
409 LogDebug(
"EBOccupancyTask") <<
"event " <<
ievt_ <<
" digi collection size " << nebd;
416 int ie = (ic-1)/20 + 1;
417 int ip = (ic-1)%20 + 1;
421 float xie = ie - 0.5;
422 float xip = ip - 0.5;
424 if ( xie <= 0. || xie >= 85. || xip <= 0. || xip >= 20. ) {
426 edm::LogWarning(
"EBOccupancyTask") <<
" sm, ieta, iphi " << ism <<
" " << ie <<
" " << ip;
427 edm::LogWarning(
"EBOccupancyTask") <<
" xie, xip " << xie <<
" " << xip;
432 int ebeta =
id.ieta();
433 int ebphi =
id.iphi();
435 float xebeta = ebeta - 0.5*
id.zside();
436 float xebphi = ebphi - 0.5;
452 if ( runType[ism-1] ==
laser ) {
468 edm::LogWarning(
"EBOccupancyTask") <<
"EBDigiCollection not available";
485 float PnId = pnItr->id().iPnId();
490 for (
int chInStrip = 1; chInStrip <= 5; chInStrip++){
492 st = chInStrip - 0.5;
501 edm::LogWarning(
"EBOccupancyTask") <<
"EcalPnDiodeDigiCollection not available";
512 int nebrh = rechits->size();
513 LogDebug(
"EBOccupancyTask") <<
"event " <<
ievt_ <<
" rec hits collection size " << nebrh;
520 int ebeta =
id.
ieta();
521 int ebphi =
id.iphi();
523 float xebeta = ebeta - 0.5*
id.zside();
524 float xebphi = ebphi - 0.5;
530 int ie = (ic-1)/20 + 1;
531 int ip = (ic-1)%20 + 1;
533 float xie = ie - 0.5;
534 float xip = ip - 0.5;
542 uint32_t flag = rechitItr->recoFlag();
544 uint32_t sev = sevlv->severityLevel(
id, *rechits);
565 edm::LogWarning(
"EBOccupancyTask") <<
"EcalRecHitCollection not available";
573 int nebtpg = trigPrimDigis->size();
574 LogDebug(
"EBOccupancyTask") <<
"event " <<
ievt_ <<
" trigger primitives digis collection size " << nebtpg;
580 int ebeta = tpdigiItr->id().ieta();
581 int ebphi = tpdigiItr->id().iphi();
586 if ( ebphi > 72 ) ebphi = ebphi - 72;
588 float xebeta = ebeta-0.5*tpdigiItr->id().zside();
589 float xebphi = ebphi-0.5;
611 edm::LogWarning(
"EBOccupancyTask") <<
"EcalTrigPrimDigiCollection not available";
void analyze(const edm::Event &e, const edm::EventSetup &c)
Analyze.
virtual ~EBOccupancyTask()
Destructor.
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
const std::string & getName(void) const
get name of ME
MonitorElement * meEBTestPulseDigiOccupancy_
MonitorElement * meEBTrigPrimDigiOccupancyProjEtaThr_
MonitorElement * meEBTrigPrimDigiOccupancy_
MonitorElement * meEBRecHitOccupancyProjEta_
edm::EDGetTokenT< EcalRecHitCollection > EcalRecHitCollection_
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
MonitorElement * meOccupancy_[36]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
void rmdir(const std::string &fullpath)
MonitorElement * meEBTrigPrimDigiOccupancyProjPhi_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Some "id" conversions.
void beginJob(void)
BeginJob.
MonitorElement * meEBDigiOccupancy_
static std::string sEB(const unsigned ism)
edm::EDGetTokenT< EcalRawDataCollection > EcalRawDataCollection_
std::vector< EcalDCCHeaderBlock >::const_iterator const_iterator
MonitorElement * meEBLaserDigiOccupancy_
MonitorElement * book1DD(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1S histogram.
MonitorElement * meEBRecHitOccupancyThr_
MonitorElement * meEBRecHitEnergy_[36]
MonitorElement * meEBRecHitSpectrum_
MonitorElement * meOccupancyMem_[36]
MonitorElement * meEBTrigPrimDigiOccupancyProjEta_
MonitorElement * meEBTrigPrimDigiOccupancyThr_
void tag(MonitorElement *me, unsigned int myTag)
void cleanup(void)
Cleanup.
edm::EDGetTokenT< EBDigiCollection > EBDigiCollection_
MonitorElement * meEBRecHitOccupancyProjPhi_
void removeElement(const std::string &name)
edm::EDGetTokenT< EcalTrigPrimDigiCollection > EcalTrigPrimDigiCollection_
MonitorElement * meSpectrum_[36]
int ieta() const
get the crystal ieta
MonitorElement * meEBRecHitOccupancyProjPhiThr_
void endRun(const edm::Run &r, const edm::EventSetup &c)
EndRun.
int ic() const
get ECAL/crystal number inside SM
MonitorElement * meEBDigiOccupancyProjEta_
static void initGeometry(const edm::EventSetup &setup, bool verbose=false)
MonitorElement * meEBPedestalDigiOccupancy_
edm::EDGetTokenT< EcalPnDiodeDigiCollection > EcalPnDiodeDigiCollection_
MonitorElement * meEBDigiOccupancyProjPhi_
MonitorElement * meEBTrigPrimDigiOccupancyProjPhiThr_
static unsigned iSM(const unsigned ism, const EcalSubdetector subdet)
MonitorElement * meEBRecHitOccupancyProjEtaThr_
static EcalSubdetector subDet(const EBDetId &id)
EBOccupancyTask(const edm::ParameterSet &ps)
Constructor.
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
int ism(int ieta, int iphi)
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void Reset(void)
reset ME (ie. contents, errors, etc)
MonitorElement * meEBRecHitOccupancy_
void setCurrentFolder(const std::string &fullpath)
void beginRun(const edm::Run &r, const edm::EventSetup &c)
BeginRun.
MonitorElement * bookProfile2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, int nchZ, double lowZ, double highZ, const char *option="s")