CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Private Attributes
EBBeamHodoTask Class Reference

#include <EBBeamHodoTask.h>

Inheritance diagram for EBBeamHodoTask:
edm::EDAnalyzer

Public Member Functions

 EBBeamHodoTask (const edm::ParameterSet &ps)
 Constructor. More...
 
virtual ~EBBeamHodoTask ()
 Destructor. More...
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 Analyze. More...
 
void beginJob (void)
 BeginJob. More...
 
void beginRun (const edm::Run &r, const edm::EventSetup &c)
 BeginRun. More...
 
void cleanup (void)
 Cleanup. More...
 
void endJob (void)
 EndJob. More...
 
void endRun (const edm::Run &r, const edm::EventSetup &c)
 EndRun. More...
 
void reset (void)
 Reset. More...
 
void setup (void)
 Setup. More...
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Private Attributes

int cryInBeam_
 
int cryInBeamCounter_
 
DQMStoredqmStore_
 
edm::InputTag EcalRawDataCollection_
 
edm::InputTag EcalTBEventHeader_
 
edm::InputTag EcalTBHodoscopeRawInfo_
 
edm::InputTag EcalTBHodoscopeRecInfo_
 
edm::InputTag EcalTBTDCRawInfo_
 
edm::InputTag EcalTBTDCRecInfo_
 
edm::InputTag EcalUncalibratedRecHitCollection_
 
bool enableCleanup_
 
int ievt_
 
bool init_
 
int LV1_
 
MonitorElementmeCaloVsHodoXPos_
 
MonitorElementmeCaloVsHodoYPos_
 
MonitorElementmeCaloVsTDCTime_
 
MonitorElementmeEvsXRecHis_
 
MonitorElementmeEvsXRecProf_
 
MonitorElementmeEvsYRecHis_
 
MonitorElementmeEvsYRecProf_
 
MonitorElementmeHodoOcc_ [4]
 
MonitorElementmeHodoPosRecX_
 
MonitorElementmeHodoPosRecXY_
 
MonitorElementmeHodoPosRecY_
 
MonitorElementmeHodoPosXMinusCaloPosXVsCry_
 
MonitorElementmeHodoPosYMinusCaloPosYVsCry_
 
MonitorElementmeHodoQuaXRec_
 
MonitorElementmeHodoQuaYRec_
 
MonitorElementmeHodoRaw_ [4]
 
MonitorElementmeHodoSloXRec_
 
MonitorElementmeHodoSloYRec_
 
MonitorElementmeMissingCollections_
 
bool mergeRuns_
 
MonitorElementmeTDCRec_
 
MonitorElementmeTDCTimeMinusCaloTimeVsCry_
 
std::string prefixME_
 
int previousCryInBeam_
 
bool resetNow_
 
int smId
 
bool tableIsMoving_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 

Detailed Description

Definition at line 21 of file EBBeamHodoTask.h.

Constructor & Destructor Documentation

EBBeamHodoTask::EBBeamHodoTask ( const edm::ParameterSet ps)

Constructor.

Definition at line 33 of file EBBeamHodoTask.cc.

References cryInBeam_, dqmStore_, EcalRawDataCollection_, EcalTBEventHeader_, EcalTBHodoscopeRawInfo_, EcalTBHodoscopeRecInfo_, EcalTBTDCRawInfo_, EcalTBTDCRecInfo_, EcalUncalibratedRecHitCollection_, enableCleanup_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), i, init_, meCaloVsHodoXPos_, meCaloVsHodoYPos_, meCaloVsTDCTime_, meEvsXRecHis_, meEvsXRecProf_, meEvsYRecHis_, meEvsYRecProf_, meHodoOcc_, meHodoPosRecX_, meHodoPosRecXY_, meHodoPosRecY_, meHodoPosXMinusCaloPosXVsCry_, meHodoPosYMinusCaloPosYVsCry_, meHodoQuaXRec_, meHodoQuaYRec_, meHodoRaw_, meHodoSloXRec_, meHodoSloYRec_, meMissingCollections_, mergeRuns_, meTDCRec_, meTDCTimeMinusCaloTimeVsCry_, cmsCodeRules.cppFunctionSkipper::operator, prefixME_, previousCryInBeam_, and tableIsMoving_.

33  {
34 
35  init_ = false;
36 
38 
39  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");
40 
41  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);
42 
43  mergeRuns_ = ps.getUntrackedParameter<bool>("mergeRuns", false);
44 
45  EcalTBEventHeader_ = ps.getParameter<edm::InputTag>("EcalTBEventHeader");
46  EcalRawDataCollection_ = ps.getParameter<edm::InputTag>("EcalRawDataCollection");
47  EcalUncalibratedRecHitCollection_ = ps.getParameter<edm::InputTag>("EcalUncalibratedRecHitCollection");
48  EcalTBTDCRawInfo_ = ps.getParameter<edm::InputTag>("EcalTBTDCRawInfo");
49  EcalTBHodoscopeRawInfo_ = ps.getParameter<edm::InputTag>("EcalTBHodoscopeRawInfo");
50  EcalTBTDCRecInfo_ = ps.getParameter<edm::InputTag>("EcalTBTDCRecInfo");
51  EcalTBHodoscopeRecInfo_ = ps.getParameter<edm::InputTag>("EcalTBHodoscopeRecInfo");
52 
53  tableIsMoving_ = false;
54  cryInBeam_ =0;
55  previousCryInBeam_ = -99999;
56 
57  // to be filled all the time
58  for (int i=0; i<4; i++) {
59  meHodoOcc_[i] =0;
60  meHodoRaw_[i] =0;
61  }
62  meTDCRec_ =0;
63 
64  // filled only when: the table does not move
65  meHodoPosRecX_ =0;
66  meHodoPosRecY_ =0;
67  meHodoPosRecXY_ =0;
68  meHodoSloXRec_ =0;
69  meHodoSloYRec_ =0;
70  meHodoQuaXRec_ =0;
71  meHodoQuaYRec_ =0;
76 
77  meEvsXRecProf_ =0;
78  meEvsYRecProf_ =0;
79  meEvsXRecHis_ =0;
80  meEvsYRecHis_ =0;
81 
82  // and matrix 5x5 available
86 
87 }
edm::InputTag EcalTBTDCRawInfo_
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
int i
Definition: DBlmapReader.cc:9
MonitorElement * meHodoPosXMinusCaloPosXVsCry_
MonitorElement * meEvsXRecHis_
MonitorElement * meHodoSloXRec_
MonitorElement * meCaloVsHodoXPos_
MonitorElement * meHodoOcc_[4]
MonitorElement * meHodoSloYRec_
MonitorElement * meHodoPosRecY_
MonitorElement * meCaloVsHodoYPos_
MonitorElement * meEvsXRecProf_
MonitorElement * meHodoRaw_[4]
DQMStore * dqmStore_
MonitorElement * meHodoPosYMinusCaloPosYVsCry_
MonitorElement * meMissingCollections_
MonitorElement * meTDCTimeMinusCaloTimeVsCry_
edm::InputTag EcalTBTDCRecInfo_
MonitorElement * meCaloVsTDCTime_
MonitorElement * meHodoQuaXRec_
edm::InputTag EcalRawDataCollection_
std::string prefixME_
MonitorElement * meEvsYRecProf_
edm::InputTag EcalUncalibratedRecHitCollection_
MonitorElement * meHodoPosRecXY_
edm::InputTag EcalTBHodoscopeRecInfo_
MonitorElement * meHodoPosRecX_
MonitorElement * meEvsYRecHis_
MonitorElement * meHodoQuaYRec_
MonitorElement * meTDCRec_
edm::InputTag EcalTBHodoscopeRawInfo_
edm::InputTag EcalTBEventHeader_
EBBeamHodoTask::~EBBeamHodoTask ( )
virtual

Destructor.

Definition at line 89 of file EBBeamHodoTask.cc.

89  {
90 
91 }

Member Function Documentation

void EBBeamHodoTask::analyze ( const edm::Event e,
const edm::EventSetup c 
)
protectedvirtual

Analyze.

Implements edm::EDAnalyzer.

Definition at line 334 of file EBBeamHodoTask.cc.

References EcalDCCHeaderBlock::BEAMH2, EcalDCCHeaderBlock::BEAMH4, EcalTBHodoscopePlaneRawHits::channels(), EcalTBHodoscopeRawInfo::channels(), cryInBeam_, cryInBeamCounter_, EcalTBEventHeader::crystalInBeam(), EcalBarrel, EcalRawDataCollection_, EcalTBEventHeader_, EcalTBHodoscopeRawInfo_, EcalTBHodoscopeRecInfo_, EcalTBTDCRawInfo_, EcalTBTDCRecInfo_, EcalUncalibratedRecHitCollection_, EBDetId::ETAPHIMODE, EcalTBEventHeader::eventNumber(), MonitorElement::Fill(), HcalObjRepresent::Fill(), edm::Event::getByLabel(), EcalTBHodoscopeRawInfo::getPlaneRawHits(), i, EBDetId::ieta(), ievt_, init_, EcalTBHodoscopePlaneRawHits::isChannelFired(), funct::log(), LogDebug, LV1_, meCaloVsHodoXPos_, meCaloVsHodoYPos_, meCaloVsTDCTime_, meEvsXRecHis_, meEvsXRecProf_, meEvsYRecHis_, meEvsYRecProf_, meHodoOcc_, meHodoPosRecX_, meHodoPosRecXY_, meHodoPosRecY_, meHodoPosXMinusCaloPosXVsCry_, meHodoPosYMinusCaloPosYVsCry_, meHodoQuaXRec_, meHodoQuaYRec_, meHodoRaw_, meHodoSloXRec_, meHodoSloYRec_, meMissingCollections_, meTDCRec_, meTDCTimeMinusCaloTimeVsCry_, EcalTBHodoscopePlaneRawHits::numberOfFiredHits(), EcalTBTDCRecInfo::offset(), EcalTBHodoscopeRawInfo::planes(), EcalTBHodoscopeRecInfo::posX(), EcalTBHodoscopeRecInfo::posY(), previousCryInBeam_, edm::Handle< T >::product(), EcalTBHodoscopeRecInfo::qualX(), EcalTBHodoscopeRecInfo::qualY(), MonitorElement::Reset(), resetNow_, setup(), EcalTBHodoscopeRecInfo::slopeX(), EcalTBHodoscopeRecInfo::slopeY(), Numbers::subDet(), EcalTBEventHeader::tableIsMoving(), tableIsMoving_, EBDetId::validDetId(), and CommonMethods::weight().

334  {
335 
336  bool enable = false;
338  const EcalTBEventHeader* Header =0;
339 
340  if ( e.getByLabel(EcalTBEventHeader_, pHeader) ) {
341  Header = pHeader.product(); // get a ptr to the product
342  if (!Header) {
343  edm::LogWarning("EBBeamHodoTask") << "Event header not found. Returning. ";
344  meMissingCollections_-> Fill(0); // bin1: missing CMSSW edm::Event header
345  return;
346  }
347  tableIsMoving_ = Header->tableIsMoving();
348  cryInBeam_ = Header->crystalInBeam(); // cryInBeam_ = Header->nominalCrystalInBeam();
349  if (previousCryInBeam_ == -99999 )
351 
352  LogDebug("EBBeamHodoTask") << "event: " << ievt_ << " event header found ";
353  if (tableIsMoving_){
354  LogDebug("EBBeamHodoTask") << "Table is moving. "; }
355  else
356  { LogDebug("EBBeamHodoTask") << "Table is not moving. "; }
357  } else {
358  edm::LogWarning("EBBeamHodoTask") << "Event header not found (exception caught). Returning. ";
359  return;
360  }
361 
363 
364  if ( e.getByLabel(EcalRawDataCollection_, dcchs) ) {
365 
366  for ( EcalRawDataCollection::const_iterator dcchItr = dcchs->begin(); dcchItr != dcchs->end(); ++dcchItr ) {
367 
368  if ( Numbers::subDet( *dcchItr ) != EcalBarrel ) continue;
369 
370  if ( dcchItr->getRunType() == EcalDCCHeaderBlock::BEAMH4 ||
371  dcchItr->getRunType() == EcalDCCHeaderBlock::BEAMH2 ) enable = true;
372  }
373 
374  } else {
375  edm::LogWarning("EcalBeamTask") << EcalRawDataCollection_ << " not available";
376  meMissingCollections_-> Fill(1); // bin2: missing DCC headers
377  return;
378  // see bottom of cc file for compatibility to 2004 data [***]
379  }
380 
381  if ( ! enable ) return;
382  if ( ! init_ ) this->setup();
383  ievt_++;
384 
385  LV1_ = Header->eventNumber();
386 
388  const EcalUncalibratedRecHitCollection* uncalRecH =0;
389 
390  if ( e.getByLabel(EcalUncalibratedRecHitCollection_, pUncalRH) ) {
391  uncalRecH = pUncalRH.product(); // get a ptr to the product
392  int neh = pUncalRH->size();
393  LogDebug("EBBeamHodoTask") << EcalUncalibratedRecHitCollection_ << " found in event " << ievt_ << "; hits collection size " << neh;
394  } else {
395  edm::LogWarning("EBBeamHodoTask") << EcalUncalibratedRecHitCollection_ << " not available";
396  meMissingCollections_-> Fill(2); // bin3: missing uncalibRecHits
397  return;
398  }
399 
401  const EcalTBTDCRawInfo* rawTDC=0;
402 
403  if ( e.getByLabel(EcalTBTDCRawInfo_, pTDCRaw) ) {
404  rawTDC = pTDCRaw.product();
405  } else {
406  edm::LogError("EcalBeamTask") << "Error! Can't get the product EcalTBTDCRawInfo. Returning.";
407  meMissingCollections_-> Fill(4); // bin5: missing raw TDC
408  return;
409  }
410 
412  const EcalTBHodoscopeRawInfo* rawHodo=0;
413 
414  if ( e.getByLabel(EcalTBHodoscopeRawInfo_, pHodoRaw) ) {
415  rawHodo = pHodoRaw.product();
416  if(rawHodo->planes() ){
417  LogDebug("EcalBeamTask") << "hodoscopeRaw: num planes: " << rawHodo->planes()
418  << " channels in plane 1: " << rawHodo->channels(0);
419  }
420  } else {
421  edm::LogError("EcalBeamTask") << "Error! Can't get the product EcalTBHodoscopeRawInfo. Returning";
422  meMissingCollections_-> Fill(3); // bin4: missing raw hodo hits collection
423  return;
424  }
425 
426  if ( !rawTDC ||!rawHodo || !uncalRecH || !( rawHodo->planes() )) {
427  edm::LogWarning("EcalBeamTask") << "analyze: missing a needed collection or hodo collection empty. Returning.";
428  return;
429  }
430  LogDebug("EBBeamHodoTask") << " TDC raw, Hodo raw, uncalRecH and DCCheader found.";
431 
432 
433 
434  // table has come to a stop is identified by new value of cry_in_beam
435  // - increase counter of crystals that have been on beam
436  // - set flag for resetting
437  if (cryInBeam_ != previousCryInBeam_ ) {
440  resetNow_ = true;
441 
442  // since flag "tableIsMoving==false" is reliable (as we can tell, so far),
443  // operations due when "table has started moving"
444  // can be done after the change in crystal in beam
445 
446  LogDebug("EcalBeamTask") << "At event number : " << LV1_ << " switching table status: from moving to still. "
447  << " cry in beam is: " << cryInBeam_ << ", step being: " << cryInBeamCounter_ ;
448 
449  // fill here plots which keep history of beamed crystals
450  float HodoPosXMinusCaloPosXVsCry_mean =0;
451  float HodoPosXMinusCaloPosXVsCry_rms =0;
452  float HodoPosYMinusCaloPosYVsCry_mean =0;
453  float HodoPosYMinusCaloPosYVsCry_rms =0;
454  float TDCTimeMinusCaloTimeVsCry_mean =0;
455  float TDCTimeMinusCaloTimeVsCry_rms =0;
456 
457  // min number of entries chosen assuming:
458  // prescaling = 100 X 2FU
459  // that we want at leas 2k events per crystal
460 
461  if (meCaloVsHodoXPos_-> getEntries() > 10){
462  HodoPosXMinusCaloPosXVsCry_mean = meCaloVsHodoXPos_-> getMean(1);
463  HodoPosXMinusCaloPosXVsCry_rms = meCaloVsHodoXPos_-> getRMS(1);
464  meHodoPosXMinusCaloPosXVsCry_-> setBinContent( cryInBeamCounter_, HodoPosXMinusCaloPosXVsCry_mean);
465  meHodoPosXMinusCaloPosXVsCry_-> setBinError( cryInBeamCounter_, HodoPosXMinusCaloPosXVsCry_rms);
466  LogDebug("EcalBeamTask") << "At event number: " << LV1_ << " step: " << cryInBeamCounter_
467  << " DeltaPosX is: " << (meCaloVsHodoXPos_-> getMean(1))
468  << " +-" << ( meCaloVsHodoXPos_-> getRMS(1));
469  }
470  if (meCaloVsHodoYPos_-> getEntries() > 10){
471  HodoPosYMinusCaloPosYVsCry_mean = meCaloVsHodoYPos_-> getMean(1);
472  HodoPosYMinusCaloPosYVsCry_rms = meCaloVsHodoYPos_-> getRMS(1);
473  meHodoPosYMinusCaloPosYVsCry_-> setBinContent( cryInBeamCounter_, HodoPosYMinusCaloPosYVsCry_mean);
474  meHodoPosYMinusCaloPosYVsCry_-> setBinError( cryInBeamCounter_, HodoPosYMinusCaloPosYVsCry_rms);
475  LogDebug("EcalBeamTask") << "At event number: " << LV1_ << " step: " << cryInBeamCounter_
476  << " DeltaPosY is: " << (meCaloVsHodoYPos_-> getMean(1))
477  << " +-" << ( meCaloVsHodoYPos_-> getRMS(1));
478  }
479  if (meCaloVsTDCTime_-> getEntries() > 10){
480  TDCTimeMinusCaloTimeVsCry_mean = meCaloVsTDCTime_-> getMean(1);
481  TDCTimeMinusCaloTimeVsCry_rms = meCaloVsTDCTime_-> getRMS(1);
482  meTDCTimeMinusCaloTimeVsCry_-> setBinContent(cryInBeamCounter_, TDCTimeMinusCaloTimeVsCry_mean);
483  meTDCTimeMinusCaloTimeVsCry_-> setBinError(cryInBeamCounter_, TDCTimeMinusCaloTimeVsCry_rms);
484  LogDebug("EcalBeamTask") << "At event number: " << LV1_ << " step: " << cryInBeamCounter_
485  << " DeltaT is: " << (meCaloVsTDCTime_-> getMean(1))
486  << " +-" << ( meCaloVsTDCTime_-> getRMS(1));
487  }
488 
489  LogDebug("EcalBeamTask") << "At event number: " << LV1_ << " trace histos filled ( cryInBeamCounter_="
490  << cryInBeamCounter_ << ")";
491 
492  }
493 
494 
495 
496 
497  // if table has come to rest (from movement), reset concerned ME's
498  if (resetNow_)
499  {
502  meEvsXRecHis_->Reset();
503  meEvsYRecHis_->Reset();
507 
508  resetNow_ = false;
509  }
510 
511 
512 
513 
514  /**************************************
515  // handling histos type I:
516  **************************************/
517  for (unsigned int planeId=0; planeId <4; planeId++){
518 
519  const EcalTBHodoscopePlaneRawHits& planeRaw = rawHodo->getPlaneRawHits(planeId);
520  LogDebug("EcalBeamTask") << "\t plane: " << (planeId+1)
521  << "\t number of fibers: " << planeRaw.channels()
522  << "\t number of hits: " << planeRaw.numberOfFiredHits();
523  meHodoOcc_[planeId]-> Fill( planeRaw.numberOfFiredHits() );
524 
525  for (unsigned int i=0;i<planeRaw.channels();i++)
526  {
527  if (planeRaw.isChannelFired(i))
528  {
529  edm::LogInfo("EcalBeamTask")<< " channel " << (i+1) << " has fired";
530  meHodoRaw_[planeId]-> Fill(i+0.5);
531  }
532  }
533  }
534 
535 
536 
538  const EcalTBTDCRecInfo* recTDC=0;
539 
540  if ( e.getByLabel(EcalTBTDCRecInfo_, pTDC) ) {
541  recTDC = pTDC.product();
542  LogDebug("EBBeamHodoTask") << " TDC offset is: " << recTDC->offset();
543  } else {
544  edm::LogError("EcalBeamTask") << "Error! Can't get the product EcalTBTDCRecInfo. Returning";
545  meMissingCollections_-> Fill(5); // bin6: missing reconstructed TDC
546  return;
547  }
548 
550  const EcalTBHodoscopeRecInfo* recHodo=0;
551 
552  if ( e.getByLabel(EcalTBHodoscopeRecInfo_, pHodo) ) {
553  recHodo = pHodo.product();
554  LogDebug("EcalBeamTask") << "hodoscopeReco: x: " << recHodo->posX()
555  << "\ty: " << recHodo->posY()
556  << "\t sx: " << recHodo->slopeX() << "\t qualx: " << recHodo->qualX()
557  << "\t sy: " << recHodo->slopeY() << "\t qualy: " << recHodo->qualY();
558  } else {
559  edm::LogError("EcalBeamTask") << "Error! Can't get the product EcalTBHodoscopeRecInfo";
560  meMissingCollections_-> Fill(6); // bin7: missing reconstructed hodoscopes
561  return;
562  }
563 
564  if ( (!recHodo) || (!recTDC) ) {
565  edm::LogWarning("EcalBeamTask") << "analyze: missing a needed collection, recHodo or recTDC. Returning.";
566  return;
567  }
568  LogDebug("EBBeamHodoTask") << " Hodo reco and TDC reco found.";
569 
570  meTDCRec_->Fill( recTDC->offset());
571 
572  meHodoPosRecXY_->Fill( recHodo->posX(), recHodo->posY() );
573  meHodoPosRecX_->Fill( recHodo->posX());
574  meHodoPosRecY_->Fill( recHodo->posY() );
575  meHodoSloXRec_->Fill( recHodo->slopeX());
576  meHodoSloYRec_->Fill( recHodo->slopeY());
577  meHodoQuaXRec_->Fill( recHodo->qualX());
578  meHodoQuaYRec_->Fill( recHodo->qualY());
579 
580  /**************************************
581  // handling histos type II:
582  **************************************/
583 
584  if (tableIsMoving_) {
585  LogDebug("EcalBeamTask")<< "At event number:" << LV1_ << " table is moving. Not filling concerned monitoring elements. ";
586  return;
587  } else {
588  LogDebug("EcalBeamTask")<< "At event number:" << LV1_ << " table is not moving - thus filling alos monitoring elements requiring so.";
589  }
590 
591  float maxE =0;
592  EBDetId maxHitId(0);
593  for ( EBUncalibratedRecHitCollection::const_iterator uncalHitItr = pUncalRH->begin(); uncalHitItr!= pUncalRH->end(); uncalHitItr++ ) {
594  double e = (*uncalHitItr).amplitude();
595  if ( e <= 0. ) e = 0.0;
596  if ( e > maxE ) {
597  maxE = e;
598  maxHitId = (*uncalHitItr).id();
599  }
600  }
601  if ( maxHitId == EBDetId(0) ) {
602  edm::LogError("EBBeamHodoTask") << "No positive UncalRecHit found in ECAL in event " << ievt_ << " - returning.";
603  return;
604  }
605 
606  meEvsXRecProf_-> Fill(recHodo->posX(), maxE);
607  meEvsYRecProf_-> Fill(recHodo->posY(), maxE);
608  meEvsXRecHis_-> Fill(recHodo->posX(), maxE);
609  meEvsYRecHis_-> Fill(recHodo->posY(), maxE);
610 
611  edm::LogInfo("EcalBeamTask")<< " channel with max is " << maxHitId;
612 
613  bool mat5x5 =true;
614  int ietaMax = maxHitId.ieta();
615  int iphiMax = (maxHitId.iphi() % 20);
616  if (ietaMax ==1 || ietaMax ==2 || ietaMax ==84 || ietaMax == 85 ||
617  iphiMax ==1 || iphiMax ==2 || iphiMax ==19 || iphiMax == 20 )
618  {mat5x5 =false;}
619 
620  if (!mat5x5) return;
621 
622  EBDetId Xtals5x5[25];
623  double ene5x5[25];
624  double e25 =0;
625  for (unsigned int icry=0;icry<25;icry++)
626  {
627  unsigned int row = icry / 5;
628  unsigned int column= icry %5;
629  if ( EBDetId::validDetId(maxHitId.ieta()+column-2,maxHitId.iphi()+row-2) ) {
630  Xtals5x5[icry]=EBDetId(maxHitId.ieta()+column-2,maxHitId.iphi()+row-2,EBDetId::ETAPHIMODE);
631  double e = ( *pUncalRH->find( Xtals5x5[icry] ) ).amplitude();
632  if ( e <= 0. ) e = 0.0;
633  ene5x5[icry] =e;
634  e25 +=e;
635  } else {
636  LogDebug("EcalBeamTask")<< "Cannot construct 5x5 matrix around EBDetId " << maxHitId;
637  mat5x5 =false;
638  }
639  }
640 
641  if (!mat5x5) return;
642  LogDebug("EcalBeamTask")<< "Could construct 5x5 matrix around EBDetId " << maxHitId;
643 
644  // im mm
645  float sideX =24.06;
646  float sideY =22.02;
647  float caloX =0;
648  float caloY =0;
649  float weight=0;
650  float sumWeight=0;
651  // X and Y calculated from log-weighted energy center of mass
652  for (unsigned int icry=0;icry<25;icry++)
653  {
654  weight = log( ene5x5[icry] / e25) + 3.8;
655  if (weight>0)
656  {
657  unsigned int row = icry / 5;
658  unsigned int column = icry %5;
659  caloX += (column-2) * sideX * weight;
660  caloY -= (row-2) * sideY * weight;
661  sumWeight += weight;
662  }
663  }
664  caloX /=sumWeight;
665  caloY /=sumWeight;
666 
667  meCaloVsHodoXPos_->Fill( recHodo->posX()-caloX );
668  meCaloVsHodoYPos_->Fill( recHodo->posY()-caloY );
669  meCaloVsTDCTime_->Fill( (*pUncalRH->find( maxHitId ) ).jitter() - recTDC->offset() - 3);
670  LogDebug("EcalBeamTask")<< "jiitter from uncalRecHit: " << (*pUncalRH->find( maxHitId ) ).jitter();
671 
672 }
#define LogDebug(id)
edm::InputTag EcalTBTDCRawInfo_
static bool validDetId(int i, int j)
check if a valid index combination
Definition: EBDetId.cc:59
int i
Definition: DBlmapReader.cc:9
MonitorElement * meHodoPosXMinusCaloPosXVsCry_
const EcalTBHodoscopePlaneRawHits & getPlaneRawHits(unsigned int i) const
MonitorElement * meEvsXRecHis_
MonitorElement * meHodoSloXRec_
MonitorElement * meCaloVsHodoXPos_
MonitorElement * meHodoOcc_[4]
bool tableIsMoving() const
Tell if the table is Moving.
MonitorElement * meHodoSloYRec_
unsigned int channels() const
Get Methods.
void setup(void)
Setup.
MonitorElement * meHodoPosRecY_
std::vector< T >::const_iterator const_iterator
MonitorElement * meCaloVsHodoYPos_
MonitorElement * meEvsXRecProf_
int crystalInBeam() const
Returns the crystal which is being hit by the beam (in the internal SM numbering scheme) ...
void Fill(long long x)
MonitorElement * meHodoRaw_[4]
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
unsigned int channels(unsigned int plane) const
MonitorElement * meHodoPosYMinusCaloPosYVsCry_
MonitorElement * meMissingCollections_
MonitorElement * meTDCTimeMinusCaloTimeVsCry_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:355
edm::InputTag EcalTBTDCRecInfo_
static const int ETAPHIMODE
Definition: EBDetId.h:145
MonitorElement * meCaloVsTDCTime_
MonitorElement * meHodoQuaXRec_
edm::InputTag EcalRawDataCollection_
Log< T >::type log(const T &t)
Definition: Log.h:22
MonitorElement * meEvsYRecProf_
int eventNumber() const
Returns the event number.
T const * product() const
Definition: Handle.h:74
bool isChannelFired(unsigned int i) const
edm::EventID id() const
Definition: EventBase.h:56
edm::InputTag EcalUncalibratedRecHitCollection_
MonitorElement * meHodoPosRecXY_
edm::InputTag EcalTBHodoscopeRecInfo_
MonitorElement * meHodoPosRecX_
static EcalSubdetector subDet(const EBDetId &id)
Definition: Numbers.cc:136
MonitorElement * meEvsYRecHis_
void Reset(void)
reset ME (ie. contents, errors, etc)
unsigned int planes() const
Get Methods.
MonitorElement * meHodoQuaYRec_
float offset() const
MonitorElement * meTDCRec_
edm::InputTag EcalTBHodoscopeRawInfo_
edm::InputTag EcalTBEventHeader_
void EBBeamHodoTask::beginJob ( void  )
protectedvirtual

BeginJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 93 of file EBBeamHodoTask.cc.

References cryInBeamCounter_, dqmStore_, ievt_, LV1_, prefixME_, resetNow_, DQMStore::rmdir(), and DQMStore::setCurrentFolder().

93  {
94 
95  ievt_ = 0;
96 
97  LV1_ = 0;
99  resetNow_ =false;
100 
101  if ( dqmStore_ ) {
102  dqmStore_->setCurrentFolder(prefixME_ + "/EBBeamHodoTask");
103  dqmStore_->rmdir(prefixME_ + "/EBBeamHodoTask");
104  }
105 
106 }
void rmdir(const std::string &fullpath)
Definition: DQMStore.cc:2311
DQMStore * dqmStore_
std::string prefixME_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232
void EBBeamHodoTask::beginRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

BeginRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 108 of file EBBeamHodoTask.cc.

References Numbers::initGeometry(), mergeRuns_, and reset().

108  {
109 
110  Numbers::initGeometry(c, false);
111 
112  if ( ! mergeRuns_ ) this->reset();
113 
114 }
void reset(void)
Reset.
static void initGeometry(const edm::EventSetup &setup, bool verbose=false)
Definition: Numbers.cc:45
void EBBeamHodoTask::cleanup ( void  )
protected

Cleanup.

Definition at line 267 of file EBBeamHodoTask.cc.

References dqmStore_, edm::getName(), MonitorElement::getName(), i, init_, meCaloVsHodoXPos_, meCaloVsHodoYPos_, meCaloVsTDCTime_, meEvsXRecHis_, meEvsXRecProf_, meEvsYRecHis_, meEvsYRecProf_, meHodoOcc_, meHodoPosRecX_, meHodoPosRecXY_, meHodoPosRecY_, meHodoPosXMinusCaloPosXVsCry_, meHodoPosYMinusCaloPosYVsCry_, meHodoQuaXRec_, meHodoQuaYRec_, meHodoRaw_, meHodoSloXRec_, meHodoSloYRec_, meMissingCollections_, meTDCRec_, meTDCTimeMinusCaloTimeVsCry_, prefixME_, DQMStore::removeElement(), and DQMStore::setCurrentFolder().

Referenced by endJob().

267  {
268 
269  if ( ! init_ ) return;
270 
271  if ( dqmStore_ ) {
272  dqmStore_->setCurrentFolder(prefixME_ + "/EBBeamHodoTask");
273 
274  for (int i=0; i<4; i++) {
276  meHodoOcc_[i] = 0;
278  meHodoRaw_[i] = 0;
279  }
280 
282  meHodoPosRecX_ = 0;
284  meHodoPosRecY_ = 0;
286  meHodoPosRecXY_ = 0;
288  meHodoSloXRec_ = 0;
290  meHodoSloYRec_ = 0;
292  meHodoQuaXRec_ = 0;
294  meHodoQuaYRec_ = 0;
296  meTDCRec_ = 0;
298  meEvsXRecProf_ = 0;
300  meEvsYRecProf_ = 0;
302  meEvsXRecHis_ = 0;
304  meEvsYRecHis_ = 0;
306  meCaloVsHodoXPos_ = 0;
308  meCaloVsHodoYPos_ = 0;
310  meCaloVsTDCTime_ = 0;
319 
320  }
321 
322  init_ = false;
323 
324 }
const std::string & getName(void) const
get name of ME
int i
Definition: DBlmapReader.cc:9
MonitorElement * meHodoPosXMinusCaloPosXVsCry_
MonitorElement * meEvsXRecHis_
MonitorElement * meHodoSloXRec_
MonitorElement * meCaloVsHodoXPos_
MonitorElement * meHodoOcc_[4]
MonitorElement * meHodoSloYRec_
MonitorElement * meHodoPosRecY_
MonitorElement * meCaloVsHodoYPos_
MonitorElement * meEvsXRecProf_
MonitorElement * meHodoRaw_[4]
DQMStore * dqmStore_
MonitorElement * meHodoPosYMinusCaloPosYVsCry_
void removeElement(const std::string &name)
Definition: DQMStore.cc:2353
MonitorElement * meMissingCollections_
std::string getName(Reflex::Type &cc)
Definition: ClassFiller.cc:18
MonitorElement * meTDCTimeMinusCaloTimeVsCry_
MonitorElement * meCaloVsTDCTime_
MonitorElement * meHodoQuaXRec_
std::string prefixME_
MonitorElement * meEvsYRecProf_
MonitorElement * meHodoPosRecXY_
MonitorElement * meHodoPosRecX_
MonitorElement * meEvsYRecHis_
MonitorElement * meHodoQuaYRec_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232
MonitorElement * meTDCRec_
void EBBeamHodoTask::endJob ( void  )
protectedvirtual

EndJob.

Reimplemented from edm::EDAnalyzer.

Definition at line 326 of file EBBeamHodoTask.cc.

References cleanup(), enableCleanup_, and ievt_.

326  {
327 
328  edm::LogInfo("EBBeamHodoTask") << "analyzed " << ievt_ << " events";
329 
330  if ( enableCleanup_ ) this->cleanup();
331 
332 }
void cleanup(void)
Cleanup.
void EBBeamHodoTask::endRun ( const edm::Run r,
const edm::EventSetup c 
)
protectedvirtual

EndRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 116 of file EBBeamHodoTask.cc.

116  {
117 
118 }
void EBBeamHodoTask::reset ( void  )
protected

Reset.

Definition at line 120 of file EBBeamHodoTask.cc.

References i, meCaloVsHodoXPos_, meCaloVsHodoYPos_, meCaloVsTDCTime_, meEvsXRecHis_, meEvsXRecProf_, meEvsYRecHis_, meEvsYRecProf_, meHodoOcc_, meHodoPosRecX_, meHodoPosRecXY_, meHodoPosRecY_, meHodoPosXMinusCaloPosXVsCry_, meHodoPosYMinusCaloPosYVsCry_, meHodoQuaXRec_, meHodoQuaYRec_, meHodoRaw_, meHodoSloXRec_, meHodoSloYRec_, meMissingCollections_, meTDCRec_, meTDCTimeMinusCaloTimeVsCry_, and MonitorElement::Reset().

Referenced by beginRun().

120  {
121 
122  for (int i=0; i<4; i++) {
123  if ( meHodoOcc_[i] ) meHodoOcc_[i]->Reset();
124  if ( meHodoRaw_[i] ) meHodoRaw_[i]->Reset();
125  }
126 
134  if ( meTDCRec_ ) meTDCRec_->Reset();
146 
147 }
int i
Definition: DBlmapReader.cc:9
MonitorElement * meHodoPosXMinusCaloPosXVsCry_
MonitorElement * meEvsXRecHis_
MonitorElement * meHodoSloXRec_
MonitorElement * meCaloVsHodoXPos_
MonitorElement * meHodoOcc_[4]
MonitorElement * meHodoSloYRec_
MonitorElement * meHodoPosRecY_
MonitorElement * meCaloVsHodoYPos_
MonitorElement * meEvsXRecProf_
MonitorElement * meHodoRaw_[4]
MonitorElement * meHodoPosYMinusCaloPosYVsCry_
MonitorElement * meMissingCollections_
MonitorElement * meTDCTimeMinusCaloTimeVsCry_
MonitorElement * meCaloVsTDCTime_
MonitorElement * meHodoQuaXRec_
MonitorElement * meEvsYRecProf_
MonitorElement * meHodoPosRecXY_
MonitorElement * meHodoPosRecX_
MonitorElement * meEvsYRecHis_
void Reset(void)
reset ME (ie. contents, errors, etc)
MonitorElement * meHodoQuaYRec_
MonitorElement * meTDCRec_
void EBBeamHodoTask::setup ( void  )
protected

Setup.

Definition at line 149 of file EBBeamHodoTask.cc.

References DQMStore::book1D(), DQMStore::book2D(), dqmStore_, i, init_, meCaloVsHodoXPos_, meCaloVsHodoYPos_, meCaloVsTDCTime_, meEvsXRecHis_, meEvsXRecProf_, meEvsYRecHis_, meEvsYRecProf_, meHodoOcc_, meHodoPosRecX_, meHodoPosRecXY_, meHodoPosRecY_, meHodoPosXMinusCaloPosXVsCry_, meHodoPosYMinusCaloPosYVsCry_, meHodoQuaXRec_, meHodoQuaYRec_, meHodoRaw_, meHodoSloXRec_, meHodoSloYRec_, meMissingCollections_, meTDCRec_, meTDCTimeMinusCaloTimeVsCry_, mergeVDriftHistosByStation::name, prefixME_, Numbers::sEB(), MonitorElement::setAxisTitle(), DQMStore::setCurrentFolder(), and smId.

Referenced by analyze().

149  {
150 
151  init_ = true;
152 
153  smId =1;
154 
155  if ( dqmStore_ ) {
156  dqmStore_->setCurrentFolder(prefixME_ + "/EBBeamHodoTask");
157 
158  std::stringstream ss;
159  std::string name;
160 
161  // following ME (type I):
162  // *** do not need to be ever reset
163  // *** can be filled regardless of the moving/notMoving status of the table
164 
165  for (int i=0; i<4; i++) {
166  ss << std::setw(2) << std::setfill('0') << i+1;
167  name = "EBBHT occup " + Numbers::sEB(smId) + " " + ss.str();
168  meHodoOcc_[i] = dqmStore_->book1D(name, name, 30, 0., 30.);
169  meHodoOcc_[i]->setAxisTitle("hits per event", 1);
170  name = "EBBHT raw " + Numbers::sEB(smId) + " " + ss.str();
171  meHodoRaw_[i] = dqmStore_->book1D(name, name, 64, 0., 64.);
172  meHodoRaw_[i]->setAxisTitle("hodo fiber number", 1);
173  }
174 
175  name = "EBBHT PosX rec " + Numbers::sEB(smId);
176  meHodoPosRecX_ = dqmStore_->book1D(name, name, 100, -20, 20);
177  meHodoPosRecX_->setAxisTitle("reconstructed position (mm)", 1);
178 
179  name = "EBBHT PosY rec " + Numbers::sEB(smId);
180  meHodoPosRecY_ = dqmStore_->book1D(name, name, 100, -20, 20);
181  meHodoPosRecY_->setAxisTitle("reconstructed position (mm)", 1);
182 
183  name = "EBBHT PosYX rec " + Numbers::sEB(smId);
184  meHodoPosRecXY_ = dqmStore_->book2D(name, name, 100, -20, 20,100, -20, 20);
185  meHodoPosRecXY_->setAxisTitle("reconstructed X position (mm)", 1);
186  meHodoPosRecXY_->setAxisTitle("reconstructed Y position (mm)", 2);
187 
188  name = "EBBHT SloX " + Numbers::sEB(smId);
189  meHodoSloXRec_ = dqmStore_->book1D(name, name, 50, -0.005, 0.005);
190  meHodoSloXRec_->setAxisTitle("reconstructed track slope", 1);
191 
192  name = "EBBHT SloY " + Numbers::sEB(smId);
193  meHodoSloYRec_ = dqmStore_->book1D(name, name, 50, -0.005, 0.005);
194  meHodoSloYRec_->setAxisTitle("reconstructed track slope", 1);
195 
196  name = "EBBHT QualX " + Numbers::sEB(smId);
197  meHodoQuaXRec_ = dqmStore_->book1D(name, name, 50, 0, 5);
198  meHodoQuaXRec_->setAxisTitle("track fit quality", 1);
199 
200  name = "EBBHT QualY " + Numbers::sEB(smId);
201  meHodoQuaYRec_ = dqmStore_->book1D(name, name, 50, 0, 5);
202  meHodoQuaYRec_->setAxisTitle("track fit quality", 1);
203 
204  name = "EBBHT TDC rec " + Numbers::sEB(smId);
205  meTDCRec_ = dqmStore_->book1D(name, name, 25, 0, 1);
206  meTDCRec_->setAxisTitle("offset", 1);
207 
208  name = "EBBHT Hodo-Calo X vs Cry " + Numbers::sEB(smId);
209  meHodoPosXMinusCaloPosXVsCry_ = dqmStore_->book1D(name, name, 50, 0, 50);
210  meHodoPosXMinusCaloPosXVsCry_->setAxisTitle("scan step number", 1);
211  meHodoPosXMinusCaloPosXVsCry_->setAxisTitle("PosX_{hodo} - PosX_{calo} (mm)", 2);
212 
213  name = "EBBHT Hodo-Calo Y vs Cry " + Numbers::sEB(smId);
214  meHodoPosYMinusCaloPosYVsCry_ = dqmStore_->book1D(name, name, 50, 0, 50);
215  meHodoPosYMinusCaloPosYVsCry_->setAxisTitle("scan step number", 1);
216  meHodoPosYMinusCaloPosYVsCry_->setAxisTitle("PosY_{hodo} - PosY_{calo} (mm)", 2);
217 
218  name = "EBBHT TDC-Calo vs Cry " + Numbers::sEB(smId);
219  meTDCTimeMinusCaloTimeVsCry_ = dqmStore_->book1D(name, name, 50, 0, 50);
220  meTDCTimeMinusCaloTimeVsCry_->setAxisTitle("scan step number", 1);
221  meTDCTimeMinusCaloTimeVsCry_->setAxisTitle("Time_{TDC} - Time_{calo} (sample)", 2);
222 
223  name = "EBBHT Missing Collections " + Numbers::sEB(smId);
224  meMissingCollections_ = dqmStore_->book1D(name, name, 7, 0, 7);
225  meMissingCollections_->setAxisTitle("missing collection", 1);
226 
227  // following ME (type II):
228  // *** can be filled only when table is **not** moving
229  // *** need to be reset once table goes from 'moving'->notMoving
230 
231  name = "EBBHT prof E1 vs X " + Numbers::sEB(smId);
232  meEvsXRecProf_ = dqmStore_-> bookProfile(name, name, 100, -20, 20, 500, 0, 5000, "s");
233  meEvsXRecProf_->setAxisTitle("PosX (mm)", 1);
234  meEvsXRecProf_->setAxisTitle("E1 (ADC)", 2);
235 
236  name = "EBBHT prof E1 vs Y " + Numbers::sEB(smId);
237  meEvsYRecProf_ = dqmStore_-> bookProfile(name, name, 100, -20, 20, 500, 0, 5000, "s");
238  meEvsYRecProf_->setAxisTitle("PosY (mm)", 1);
239  meEvsYRecProf_->setAxisTitle("E1 (ADC)", 2);
240 
241  name = "EBBHT his E1 vs X " + Numbers::sEB(smId);
242  meEvsXRecHis_ = dqmStore_-> book2D(name, name, 100, -20, 20, 500, 0, 5000);
243  meEvsXRecHis_->setAxisTitle("PosX (mm)", 1);
244  meEvsXRecHis_->setAxisTitle("E1 (ADC)", 2);
245 
246  name = "EBBHT his E1 vs Y " + Numbers::sEB(smId);
247  meEvsYRecHis_ = dqmStore_-> book2D(name, name, 100, -20, 20, 500, 0, 5000);
248  meEvsYRecHis_->setAxisTitle("PosY (mm)", 1);
249  meEvsYRecHis_->setAxisTitle("E1 (ADC)", 2);
250 
251  name = "EBBHT PosX Hodo-Calo " + Numbers::sEB(smId);
252  meCaloVsHodoXPos_ = dqmStore_->book1D(name, name, 40, -20, 20);
253  meCaloVsHodoXPos_->setAxisTitle("PosX_{hodo} - PosX_{calo} (mm)", 1);
254 
255  name = "EBBHT PosY Hodo-Calo " + Numbers::sEB(smId);
256  meCaloVsHodoYPos_ = dqmStore_->book1D(name, name, 40, -20, 20);
257  meCaloVsHodoYPos_->setAxisTitle("PosY_{hodo} - PosY_{calo} (mm)", 1);
258 
259  name = "EBBHT TimeMax TDC-Calo " + Numbers::sEB(smId);
260  meCaloVsTDCTime_ = dqmStore_->book1D(name, name, 100, -1, 1);//tentative
261  meCaloVsTDCTime_->setAxisTitle("Time_{TDC} - Time_{calo} (samples)", 1);
262 
263  }
264 
265 }
int i
Definition: DBlmapReader.cc:9
MonitorElement * meHodoPosXMinusCaloPosXVsCry_
static std::string sEB(const int ism)
Definition: Numbers.cc:87
MonitorElement * meEvsXRecHis_
MonitorElement * meHodoSloXRec_
MonitorElement * meCaloVsHodoXPos_
MonitorElement * meHodoOcc_[4]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:514
MonitorElement * meHodoSloYRec_
MonitorElement * meHodoPosRecY_
MonitorElement * meCaloVsHodoYPos_
MonitorElement * meEvsXRecProf_
MonitorElement * meHodoRaw_[4]
DQMStore * dqmStore_
MonitorElement * meHodoPosYMinusCaloPosYVsCry_
MonitorElement * meMissingCollections_
MonitorElement * meTDCTimeMinusCaloTimeVsCry_
MonitorElement * meCaloVsTDCTime_
MonitorElement * meHodoQuaXRec_
std::string prefixME_
MonitorElement * meEvsYRecProf_
MonitorElement * meHodoPosRecXY_
MonitorElement * meHodoPosRecX_
MonitorElement * meEvsYRecHis_
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:642
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * meHodoQuaYRec_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:232
MonitorElement * meTDCRec_

Member Data Documentation

int EBBeamHodoTask::cryInBeam_
private

Definition at line 80 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

int EBBeamHodoTask::cryInBeamCounter_
private

Definition at line 82 of file EBBeamHodoTask.h.

Referenced by analyze(), and beginJob().

DQMStore* EBBeamHodoTask::dqmStore_
private

Definition at line 61 of file EBBeamHodoTask.h.

Referenced by beginJob(), cleanup(), EBBeamHodoTask(), and setup().

edm::InputTag EBBeamHodoTask::EcalRawDataCollection_
private

Definition at line 70 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalTBEventHeader_
private

Definition at line 69 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalTBHodoscopeRawInfo_
private

Definition at line 73 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalTBHodoscopeRecInfo_
private

Definition at line 75 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalTBTDCRawInfo_
private

Definition at line 72 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalTBTDCRecInfo_
private

Definition at line 74 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

edm::InputTag EBBeamHodoTask::EcalUncalibratedRecHitCollection_
private

Definition at line 71 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

bool EBBeamHodoTask::enableCleanup_
private

Definition at line 65 of file EBBeamHodoTask.h.

Referenced by EBBeamHodoTask(), and endJob().

int EBBeamHodoTask::ievt_
private

Definition at line 59 of file EBBeamHodoTask.h.

Referenced by analyze(), beginJob(), and endJob().

bool EBBeamHodoTask::init_
private

Definition at line 109 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), and setup().

int EBBeamHodoTask::LV1_
private

Definition at line 77 of file EBBeamHodoTask.h.

Referenced by analyze(), and beginJob().

MonitorElement* EBBeamHodoTask::meCaloVsHodoXPos_
private

Definition at line 105 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meCaloVsHodoYPos_
private

Definition at line 106 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meCaloVsTDCTime_
private

Definition at line 107 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meEvsXRecHis_
private

Definition at line 103 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meEvsXRecProf_
private

Definition at line 101 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meEvsYRecHis_
private

Definition at line 104 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meEvsYRecProf_
private

Definition at line 102 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoOcc_[4]
private

Definition at line 85 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoPosRecX_
private

Definition at line 88 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoPosRecXY_
private

Definition at line 87 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoPosRecY_
private

Definition at line 89 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoPosXMinusCaloPosXVsCry_
private

Definition at line 95 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoPosYMinusCaloPosYVsCry_
private

Definition at line 96 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoQuaXRec_
private

Definition at line 92 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoQuaYRec_
private

Definition at line 93 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoRaw_[4]
private

Definition at line 86 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoSloXRec_
private

Definition at line 90 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meHodoSloYRec_
private

Definition at line 91 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meMissingCollections_
private

Definition at line 98 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

bool EBBeamHodoTask::mergeRuns_
private

Definition at line 67 of file EBBeamHodoTask.h.

Referenced by beginRun(), and EBBeamHodoTask().

MonitorElement* EBBeamHodoTask::meTDCRec_
private

Definition at line 94 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

MonitorElement* EBBeamHodoTask::meTDCTimeMinusCaloTimeVsCry_
private

Definition at line 97 of file EBBeamHodoTask.h.

Referenced by analyze(), cleanup(), EBBeamHodoTask(), reset(), and setup().

std::string EBBeamHodoTask::prefixME_
private

Definition at line 63 of file EBBeamHodoTask.h.

Referenced by beginJob(), cleanup(), EBBeamHodoTask(), and setup().

int EBBeamHodoTask::previousCryInBeam_
private

Definition at line 81 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().

bool EBBeamHodoTask::resetNow_
private

Definition at line 79 of file EBBeamHodoTask.h.

Referenced by analyze(), and beginJob().

int EBBeamHodoTask::smId
private

Definition at line 111 of file EBBeamHodoTask.h.

Referenced by setup().

bool EBBeamHodoTask::tableIsMoving_
private

Definition at line 78 of file EBBeamHodoTask.h.

Referenced by analyze(), and EBBeamHodoTask().