CMS 3D CMS Logo

Public Member Functions | Protected Member Functions | Private Attributes

EcalBarrelMonitorModule Class Reference

#include <EcalBarrelMonitorModule.h>

Inheritance diagram for EcalBarrelMonitorModule:
edm::EDAnalyzer

List of all members.

Public Member Functions

 EcalBarrelMonitorModule (const edm::ParameterSet &ps)
 Constructor.
virtual ~EcalBarrelMonitorModule ()
 Destructor.

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 Analyze.
void beginJob (void)
void beginRun (const edm::Run &r, const edm::EventSetup &c)
 BeginRun.
void cleanup (void)
 Cleanup.
void endJob (void)
void endRun (const edm::Run &r, const edm::EventSetup &c)
 EndRun.
void reset (void)
 Reset.
void setup (void)
 Setup.

Private Attributes

bool debug_
DQMStoredqmStore_
edm::InputTag EBDigiCollection_
edm::InputTag EcalRawDataCollection_
edm::InputTag EcalRecHitCollection_
edm::InputTag EcalTrigPrimDigiCollection_
bool enableCleanup_
bool enableEventDisplay_
int evtNumber_
int evtType_
bool fixedRunNumber_
bool fixedRunType_
int ievt_
bool init_
bool isPhysics_
MonitorElementmeEBDCC_
MonitorElementmeEBdigis_ [2]
MonitorElementmeEBhits_ [2]
MonitorElementmeEBtpdigis_ [2]
MonitorElementmeEvent_ [36]
MonitorElementmeEvt_
MonitorElementmeEvtType_
bool mergeRuns_
MonitorElementmeRun_
MonitorElementmeRunType_
MonitorElementmeStatus_
std::string prefixME_
int runNumber_
int runType_
bool verbose_

Detailed Description

Definition at line 21 of file EcalBarrelMonitorModule.h.


Constructor & Destructor Documentation

EcalBarrelMonitorModule::EcalBarrelMonitorModule ( const edm::ParameterSet ps)

Constructor.

Definition at line 32 of file EcalBarrelMonitorModule.cc.

References gather_cfg::cout, debug_, EBDigiCollection_, EcalRawDataCollection_, EcalRecHitCollection_, EcalTrigPrimDigiCollection_, enableCleanup_, enableEventDisplay_, evtNumber_, evtType_, fixedRunNumber_, fixedRunType_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), i, init_, meEBDCC_, meEBdigis_, meEBhits_, meEBtpdigis_, meEvent_, meEvt_, meEvtType_, mergeRuns_, meRun_, meRunType_, meStatus_, prefixME_, runNumber_, runType_, and verbose_.

                                                                         {

  // verbose switch
  verbose_ = ps.getUntrackedParameter<bool>("verbose", false);

  if ( verbose_ ) {
    std::cout << std::endl;
    std::cout << " *** Ecal Barrel Generic Monitor ***" << std::endl;
    std::cout << std::endl;
  }

  init_ = false;

  EcalRawDataCollection_ = ps.getParameter<edm::InputTag>("EcalRawDataCollection");
  EBDigiCollection_ = ps.getParameter<edm::InputTag>("EBDigiCollection");
  EcalRecHitCollection_ = ps.getParameter<edm::InputTag>("EcalRecHitCollection");
  EcalTrigPrimDigiCollection_ = ps.getParameter<edm::InputTag>("EcalTrigPrimDigiCollection");

  // this should come from the event header
  runNumber_ = ps.getUntrackedParameter<int>("runNumber", 0);

  fixedRunNumber_ = false;
  if ( runNumber_ != 0 ) fixedRunNumber_ = true;

  if ( fixedRunNumber_ ) {
    if ( verbose_ ) {
      std::cout << " fixed Run Number = " << runNumber_ << std::endl;
    }
  }

  // this should come from the event header
  evtNumber_ = 0;

  // this should come from the EcalBarrel event header
  runType_ = ps.getUntrackedParameter<int>("runType", -1);
  evtType_ = runType_;

  fixedRunType_ = false;
  if ( runType_ != -1 ) fixedRunType_ = true;

  if ( fixedRunType_) {
    if ( verbose_ ) {
      std::cout << " fixed Run Type = " << runType_ << std::endl;
    }
  }

  // debug switch
  debug_ = ps.getUntrackedParameter<bool>("debug", false);

  if ( debug_ ) {
    if ( verbose_ ) {
      std::cout << " debug switch is ON" << std::endl;
    }
  } else {
    if ( verbose_ ) {
      std::cout << " debug switch is OFF" << std::endl;
    }
  }

  // prefixME path
  prefixME_ = ps.getUntrackedParameter<std::string>("prefixME", "");

  // enableCleanup switch
  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup", false);

  // mergeRuns switch
  mergeRuns_ = ps.getUntrackedParameter<bool>("mergeRuns", false);

  if ( enableCleanup_ ) {
    if ( verbose_ ) {
      std::cout << " enableCleanup switch is ON" << std::endl;
    }
  } else {
    if ( verbose_ ) {
      std::cout << " enableCleanup switch is OFF" << std::endl;
    }
  }

  // EventDisplay switch
  enableEventDisplay_ = ps.getUntrackedParameter<bool>("enableEventDisplay", false);

  meStatus_ = 0;
  meRun_ = 0;
  meEvt_ = 0;
  meRunType_ = 0;
  meEvtType_ = 0;

  meEBDCC_ = 0;

  for (int i = 0; i < 2; i++) {
    meEBdigis_[i] = 0;
    meEBhits_[i] = 0;
    meEBtpdigis_[i] = 0;
  }

  for (int i = 0; i < 36; i++) {
    meEvent_[i] = 0;
  }

}
EcalBarrelMonitorModule::~EcalBarrelMonitorModule ( ) [virtual]

Destructor.

Definition at line 133 of file EcalBarrelMonitorModule.cc.

                                                 {

}

Member Function Documentation

void EcalBarrelMonitorModule::analyze ( const edm::Event e,
const edm::EventSetup c 
) [protected, virtual]

Analyze.

Implements edm::EDAnalyzer.

Definition at line 372 of file EcalBarrelMonitorModule.cc.

References EcalDCCHeaderBlock::COSMIC, EcalDCCHeaderBlock::COSMICS_GLOBAL, EcalDCCHeaderBlock::COSMICS_LOCAL, EBDigiCollection_, EcalBarrel, EcalRawDataCollection_, EcalRecHitCollection_, EcalTrigPrimDigiCollection_, enableEventDisplay_, edm::EventID::event(), evtNumber_, evtType_, MonitorElement::Fill(), fixedRunNumber_, fixedRunType_, edm::Event::getByLabel(), i, EBDetId::ic(), edm::EventBase::id(), ievt_, init_, Numbers::initGeometry(), Numbers::iSM(), ecalpyutils::ism(), isPhysics_, LogDebug, meEBDCC_, meEBdigis_, meEBhits_, meEBtpdigis_, meEvent_, meEvt_, meEvtType_, meRun_, meRunType_, meStatus_, EcalDCCHeaderBlock::MTCC, EcalDCCHeaderBlock::PHYSICS_GLOBAL, EcalDCCHeaderBlock::PHYSICS_LOCAL, edm::EventID::run(), runNumber_, runType_, setup(), Numbers::subDet(), and verbose_.

                                                                              {

  Numbers::initGeometry(c, verbose_);

  if ( ! init_ ) this->setup();

  ievt_++;

  LogDebug("EcalBarrelMonitorModule") << "processing event " << ievt_;

  if ( ! fixedRunNumber_ ) runNumber_ = e.id().run();

  evtNumber_ = e.id().event();

  edm::Handle<EcalRawDataCollection> dcchs;

  if ( e.getByLabel(EcalRawDataCollection_, dcchs) ) {

    if ( dcchs->size() == 0 ) {
      LogDebug("EcalBarrelMonitorModule") << EcalRawDataCollection_ << " is empty";
      return;
    }

    int nebc = 0;

    for ( EcalRawDataCollection::const_iterator dcchItr = dcchs->begin(); dcchItr != dcchs->end(); ++dcchItr ) {

      if ( Numbers::subDet( *dcchItr ) != EcalBarrel ) continue;

      nebc++;

    }

    for ( EcalRawDataCollection::const_iterator dcchItr = dcchs->begin(); dcchItr != dcchs->end(); ++dcchItr ) {

      if ( Numbers::subDet( *dcchItr ) != EcalBarrel ) continue;

      if ( meEBDCC_ ) meEBDCC_->Fill(Numbers::iSM( *dcchItr, EcalBarrel )+0.5);

      if ( ! fixedRunNumber_ ) {
        runNumber_ = dcchItr->getRunNumber();
      }

      evtNumber_ = dcchItr->getLV1();

      if ( ! fixedRunType_ ) {
        runType_ = dcchItr->getRunType();
        evtType_ = runType_;
      }

      if ( evtType_ < 0 || evtType_ > 22 ) evtType_ = -1;
      if ( meEvtType_ ) meEvtType_->Fill(evtType_+0.5, 1./nebc);

    }

    LogDebug("EcalBarrelMonitorModule") << "event: " << ievt_ << " DCC headers collection size: " << nebc;

  } else {

    if ( evtType_ < 0 || evtType_ > 22 ) evtType_ = -1;
    if ( meEvtType_ ) meEvtType_->Fill(evtType_+0.5, 1./36.);

    edm::LogWarning("EcalBarrelMonitorModule") << EcalRawDataCollection_ << " not available";

  }

  isPhysics_ = false;
  if ( evtType_ == EcalDCCHeaderBlock::COSMIC ||
       evtType_ == EcalDCCHeaderBlock::MTCC ||
       evtType_ == EcalDCCHeaderBlock::COSMICS_GLOBAL ||
       evtType_ == EcalDCCHeaderBlock::PHYSICS_GLOBAL ||
       evtType_ == EcalDCCHeaderBlock::COSMICS_LOCAL ||
       evtType_ == EcalDCCHeaderBlock::PHYSICS_LOCAL ) isPhysics_ = true;

  if ( meRunType_ ) meRunType_->Fill(runType_);

  if ( ievt_ == 1 ) {
    LogDebug("EcalBarrelMonitorModule") << "processing run " << runNumber_;
    // begin-of-run
    if ( meStatus_ ) meStatus_->Fill(0);
  } else {
    // running
    if ( meStatus_ ) meStatus_->Fill(1);
  }

  if ( meRun_ ) meRun_->Fill(runNumber_);
  if ( meEvt_ ) meEvt_->Fill(evtNumber_);

  edm::Handle<EBDigiCollection> digis;

  if ( e.getByLabel(EBDigiCollection_, digis) ) {

    int nebd = digis->size();
    LogDebug("EcalBarrelMonitorModule") << "event " << ievt_ << " digi collection size " << nebd;

    int counter[36] = { 0 };

    if ( meEBdigis_[0] ) {
      if ( isPhysics_ ) meEBdigis_[0]->Fill(float(nebd));
    }

    for ( EBDigiCollection::const_iterator digiItr = digis->begin(); digiItr != digis->end(); ++digiItr ) {

      EBDetId id = digiItr->id();

      int ism = Numbers::iSM( id );

      counter[ism-1]++;

    }

    for (int i = 0; i < 36; i++) {

      if ( meEBdigis_[1] ) {
        if ( isPhysics_ ) meEBdigis_[1]->Fill(i+1+0.5, counter[i]);
      }

    }

  } else {

    edm::LogWarning("EcalBarrelMonitorModule") << EBDigiCollection_ << " not available";

  }

  edm::Handle<EcalRecHitCollection> hits;

  if ( e.getByLabel(EcalRecHitCollection_, hits) ) {

    int nebh = hits->size();
    LogDebug("EcalBarrelMonitorModule") << "event " << ievt_ << " hits collection size " << nebh;

    if ( meEBhits_[0] ) {
      if ( isPhysics_ ) meEBhits_[0]->Fill(float(nebh));
    }

    int counter[36] = { 0 };

    for ( EcalRecHitCollection::const_iterator hitItr = hits->begin(); hitItr != hits->end(); ++hitItr ) {

      EBDetId id = hitItr->id();

      int ic = id.ic();
      int ie = (ic-1)/20 + 1;
      int ip = (ic-1)%20 + 1;

      int ism = Numbers::iSM( id );

      counter[ism-1]++;

      float xie = ie - 0.5;
      float xip = ip - 0.5;

      float xval = hitItr->energy();

      if ( enableEventDisplay_ ) {

        if ( xval >= 10 ) {
          if ( meEvent_[ism-1] ) meEvent_[ism-1]->Fill(xie, xip, xval);
        }

      }

    }

    for (int i = 0; i < 36; i++) {

      if ( meEBhits_[1] ) {
        if ( isPhysics_ ) meEBhits_[1]->Fill(i+1+0.5, counter[i]);
      }

    }

  } else {

    edm::LogWarning("EcalBarrelMonitorModule") << EcalRecHitCollection_ << " not available";

  }

  edm::Handle<EcalTrigPrimDigiCollection> tpdigis;

  if ( e.getByLabel(EcalTrigPrimDigiCollection_, tpdigis) ) {

    int nebtpd = 0;
    int counter[36] = { 0 };

    for ( EcalTrigPrimDigiCollection::const_iterator tpdigiItr = tpdigis->begin(); tpdigiItr != tpdigis->end(); ++tpdigiItr ) {

      EcalTrigTowerDetId idt = tpdigiItr->id();

      if ( Numbers::subDet( idt ) != EcalBarrel ) continue;

      int ismt = Numbers::iSM( idt );

      nebtpd++;
      counter[ismt-1]++;

    }

    LogDebug("EcalBarrelMonitorModule") << "event " << ievt_ << " TP digi collection size " << nebtpd;
    if ( meEBtpdigis_[0] ) {
      if ( isPhysics_ ) meEBtpdigis_[0]->Fill(float(nebtpd));
    }

    for (int i = 0; i < 36; i++) {

      if ( meEBtpdigis_[1] ) {
        if ( isPhysics_ ) meEBtpdigis_[1]->Fill(i+1+0.5, counter[i]);
      }

    }

  } else {

    edm::LogWarning("EcalBarrelMonitorModule") << EcalTrigPrimDigiCollection_ << " not available";

  }

}
void EcalBarrelMonitorModule::beginJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 137 of file EcalBarrelMonitorModule.cc.

References gather_cfg::cout, debug_, dqmStore_, enableEventDisplay_, ievt_, cppFunctionSkipper::operator, prefixME_, DQMStore::rmdir(), and DQMStore::setCurrentFolder().

                                          {

  if ( debug_ ) std::cout << "EcalBarrelMonitorModule: beginJob" << std::endl;

  ievt_ = 0;

  dqmStore_ = edm::Service<DQMStore>().operator->();

  if ( dqmStore_ ) {
    dqmStore_->setCurrentFolder(prefixME_ + "/EcalInfo");
    dqmStore_->rmdir(prefixME_ + "/EcalInfo");
    if ( enableEventDisplay_ ) {
      dqmStore_->setCurrentFolder(prefixME_ + "/EcalEvent");
      dqmStore_->rmdir(prefixME_ + "/EcalEvent");
    }
  }

}
void EcalBarrelMonitorModule::beginRun ( const edm::Run r,
const edm::EventSetup c 
) [protected, virtual]

BeginRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 156 of file EcalBarrelMonitorModule.cc.

References gather_cfg::cout, debug_, mergeRuns_, and reset().

                                                                              {

  if ( debug_ ) std::cout << "EcalBarrelMonitorModule: beginRun" << std::endl;

  if ( ! mergeRuns_ ) this->reset();

}
void EcalBarrelMonitorModule::cleanup ( void  ) [protected]

Cleanup.

Definition at line 294 of file EcalBarrelMonitorModule.cc.

References dqmStore_, enableCleanup_, enableEventDisplay_, edm::getName(), MonitorElement::getName(), i, init_, meEBDCC_, meEBdigis_, meEBhits_, meEBtpdigis_, meEvent_, meEvt_, meEvtType_, meRun_, meRunType_, meStatus_, prefixME_, DQMStore::removeElement(), and DQMStore::setCurrentFolder().

Referenced by endJob().

void EcalBarrelMonitorModule::endJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 352 of file EcalBarrelMonitorModule.cc.

References cleanup(), gather_cfg::cout, debug_, dqmStore_, evtNumber_, MonitorElement::Fill(), DQMStore::get(), ievt_, init_, meEvt_, meRun_, meStatus_, prefixME_, and runNumber_.

                                         {

  if ( debug_ ) std::cout << "EcalBarrelMonitorModule: endJob, ievt = " << ievt_ << std::endl;

  if ( dqmStore_ ) {
    meStatus_ = dqmStore_->get(prefixME_ + "/EcalInfo/STATUS");
    meRun_ = dqmStore_->get(prefixME_ + "/EcalInfo/RUN");
    meEvt_ = dqmStore_->get(prefixME_ + "/EcalInfo/EVT");
  }

  // end-of-run
  if ( meStatus_ ) meStatus_->Fill(2);

  if ( meRun_ ) meRun_->Fill(runNumber_);
  if ( meEvt_ ) meEvt_->Fill(evtNumber_);

  if ( init_ ) this->cleanup();

}
void EcalBarrelMonitorModule::endRun ( const edm::Run r,
const edm::EventSetup c 
) [protected, virtual]

EndRun.

Reimplemented from edm::EDAnalyzer.

Definition at line 164 of file EcalBarrelMonitorModule.cc.

References gather_cfg::cout, debug_, evtNumber_, MonitorElement::Fill(), meEvt_, meRun_, meStatus_, and runNumber_.

                                                                            {

  if ( debug_ ) std::cout << "EcalBarrelMonitorModule: endRun" << std::endl;

  // end-of-run
  if ( meStatus_ ) meStatus_->Fill(2);

  if ( meRun_ ) meRun_->Fill(runNumber_);
  if ( meEvt_ ) meEvt_->Fill(evtNumber_);

}
void EcalBarrelMonitorModule::reset ( void  ) [protected]

Reset.

Definition at line 176 of file EcalBarrelMonitorModule.cc.

References enableEventDisplay_, i, meEBDCC_, meEBdigis_, meEBhits_, meEBtpdigis_, meEvent_, meEvtType_, and MonitorElement::Reset().

Referenced by beginRun().

                                        {

  if ( meEvtType_ ) meEvtType_->Reset();

  if ( meEBDCC_ ) meEBDCC_->Reset();

  for (int i = 0; i < 2; i++) {
    if ( meEBdigis_[i] ) meEBdigis_[i]->Reset();

    if ( meEBhits_[i] ) meEBdigis_[i]->Reset();

    if ( meEBtpdigis_[i] ) meEBtpdigis_[i]->Reset();
  }

  if ( enableEventDisplay_ ) {
    for (int i = 0; i < 18; i++) {
      if ( meEvent_[i] ) meEvent_[i]->Reset();
    }
  }

}
void EcalBarrelMonitorModule::setup ( void  ) [protected]

Setup.

Definition at line 198 of file EcalBarrelMonitorModule.cc.

References EcalDCCHeaderBlock::BEAMH2, EcalDCCHeaderBlock::BEAMH4, DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookInt(), DQMStore::bookProfile(), EcalDCCHeaderBlock::COSMIC, EcalDCCHeaderBlock::COSMICS_GLOBAL, EcalDCCHeaderBlock::COSMICS_LOCAL, dqmStore_, enableEventDisplay_, MonitorElement::Fill(), EcalDCCHeaderBlock::HALO_GLOBAL, EcalDCCHeaderBlock::HALO_LOCAL, i, init_, EcalDCCHeaderBlock::LASER_DELAY_SCAN, EcalDCCHeaderBlock::LASER_GAP, EcalDCCHeaderBlock::LASER_POWER_SCAN, EcalDCCHeaderBlock::LASER_STD, EcalDCCHeaderBlock::LED_GAP, EcalDCCHeaderBlock::LED_STD, meEBDCC_, meEBdigis_, meEBhits_, meEBtpdigis_, meEvent_, meEvt_, meEvtType_, meRun_, meRunType_, meStatus_, EcalDCCHeaderBlock::MTCC, mergeVDriftHistosByStation::name, EcalDCCHeaderBlock::PEDESTAL_25NS_SCAN, EcalDCCHeaderBlock::PEDESTAL_GAP, EcalDCCHeaderBlock::PEDESTAL_OFFSET_SCAN, EcalDCCHeaderBlock::PEDESTAL_STD, EcalDCCHeaderBlock::PHYSICS_GLOBAL, EcalDCCHeaderBlock::PHYSICS_LOCAL, prefixME_, Numbers::sEB(), MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), MonitorElement::setResetMe(), DQMStore::tag(), EcalDCCHeaderBlock::TESTPULSE_GAP, EcalDCCHeaderBlock::TESTPULSE_MGPA, and EcalDCCHeaderBlock::TESTPULSE_SCAN_MEM.

Referenced by analyze().

                                       {

  init_ = true;

  if ( dqmStore_ ) {
    dqmStore_->setCurrentFolder(prefixME_ + "/EcalInfo");

    meStatus_ = dqmStore_->bookInt("STATUS");

    meRun_ = dqmStore_->bookInt("RUN");
    meEvt_ = dqmStore_->bookInt("EVT");

    meRunType_ = dqmStore_->bookInt("RUNTYPE");
    meEvtType_ = dqmStore_->book1D("EVTTYPE", "EVTTYPE", 31, -1., 30.);
    meEvtType_->setAxisTitle("number of events", 2);
    meEvtType_->setBinLabel(1, "UNKNOWN", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::COSMIC, "COSMIC", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::BEAMH4, "BEAMH4", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::BEAMH2, "BEAMH2", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::MTCC, "MTCC", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LASER_STD, "LASER_STD", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LASER_POWER_SCAN, "LASER_POWER_SCAN", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LASER_DELAY_SCAN, "LASER_DELAY_SCAN", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::TESTPULSE_SCAN_MEM, "TESTPULSE_SCAN_MEM", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::TESTPULSE_MGPA, "TESTPULSE_MGPA", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PEDESTAL_STD, "PEDESTAL_STD", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PEDESTAL_OFFSET_SCAN, "PEDESTAL_OFFSET_SCAN", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PEDESTAL_25NS_SCAN, "PEDESTAL_25NS_SCAN", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LED_STD, "LED_STD", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PHYSICS_GLOBAL, "PHYSICS_GLOBAL", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::COSMICS_GLOBAL, "COSMICS_GLOBAL", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::HALO_GLOBAL, "HALO_GLOBAL", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LASER_GAP, "LASER_GAP", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::TESTPULSE_GAP, "TESTPULSE_GAP");
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PEDESTAL_GAP, "PEDESTAL_GAP");
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::LED_GAP, "LED_GAP", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::PHYSICS_LOCAL, "PHYSICS_LOCAL", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::COSMICS_LOCAL, "COSMICS_LOCAL", 1);
    meEvtType_->setBinLabel(2+EcalDCCHeaderBlock::HALO_LOCAL, "HALO_LOCAL", 1);
  }

  // unknown
  if ( meStatus_ ) meStatus_->Fill(-1);

  if ( meRun_ ) meRun_->Fill(-1);
  if ( meEvt_ ) meEvt_->Fill(-1);

  if ( meRunType_ ) meRunType_->Fill(-1);

  std::string name;

  if ( dqmStore_ ) {
    dqmStore_->setCurrentFolder(prefixME_ + "/EcalInfo");

    meEBDCC_ = dqmStore_->book1D("EBMM DCC", "EBMM DCC", 36, 1, 37.);
    for (int i = 0; i < 36; i++) {
      meEBDCC_->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
    }

    meEBdigis_[0] = dqmStore_->book1D("EBMM digi number", "EBMM digi number", 100, 0., 3000.);

    meEBdigis_[1] = dqmStore_->bookProfile("EBMM digi number profile", "EBMM digi number profile", 36, 1, 37., 1700, 0., 1701., "s");
    for (int i = 0; i < 36; i++) {
      meEBdigis_[1]->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
    }

    meEBhits_[0] = dqmStore_->book1D("EBMM hit number", "EBMM hit number", 100, 0., 3000.);

    meEBhits_[1] = dqmStore_->bookProfile("EBMM hit number profile", "EBMM hit number profile", 36, 1, 37., 1700, 0., 1701., "s");
    for (int i = 0; i < 36; i++) {
      meEBhits_[1]->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
    }

    meEBtpdigis_[0] = dqmStore_->book1D("EBMM TP digi number", "EBMM TP digi number", 100, 0., 2449.);

    meEBtpdigis_[1] = dqmStore_->bookProfile("EBMM TP digi number profile", "EBMM TP digi number profile", 36, 1, 37., 68, 0., 69., "s");
    for (int i = 0; i < 36; i++) {
      meEBtpdigis_[1]->setBinLabel(i+1, Numbers::sEB(i+1).c_str(), 1);
    }

    if ( enableEventDisplay_ ) {
      dqmStore_->setCurrentFolder(prefixME_ + "/EcalEvent");
      for (int i = 0; i < 36; i++) {
        name = "EBMM event " + Numbers::sEB(i+1);
        meEvent_[i] = dqmStore_->book2D(name, name, 85, 0., 85., 20, 0., 20.);
        meEvent_[i]->setAxisTitle("ieta", 1);
        meEvent_[i]->setAxisTitle("iphi", 2);
        dqmStore_->tag(meEvent_[i], i+1);
        if ( meEvent_[i] ) meEvent_[i]->setResetMe(true);
      }
    }

  }

}

Member Data Documentation

Definition at line 79 of file EcalBarrelMonitorModule.h.

Referenced by beginJob(), beginRun(), EcalBarrelMonitorModule(), endJob(), and endRun().

Definition at line 83 of file EcalBarrelMonitorModule.h.

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

Definition at line 74 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 73 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 75 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 76 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 87 of file EcalBarrelMonitorModule.h.

Referenced by cleanup(), and EcalBarrelMonitorModule().

Definition at line 60 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), EcalBarrelMonitorModule(), endJob(), and endRun().

Definition at line 63 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 65 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 67 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 71 of file EcalBarrelMonitorModule.h.

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

Definition at line 107 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), cleanup(), EcalBarrelMonitorModule(), endJob(), and setup().

Definition at line 69 of file EcalBarrelMonitorModule.h.

Referenced by analyze().

Definition at line 99 of file EcalBarrelMonitorModule.h.

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

Definition at line 101 of file EcalBarrelMonitorModule.h.

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

Definition at line 102 of file EcalBarrelMonitorModule.h.

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

Definition at line 103 of file EcalBarrelMonitorModule.h.

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

Definition at line 105 of file EcalBarrelMonitorModule.h.

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

Definition at line 97 of file EcalBarrelMonitorModule.h.

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

Definition at line 89 of file EcalBarrelMonitorModule.h.

Referenced by beginRun(), and EcalBarrelMonitorModule().

Definition at line 96 of file EcalBarrelMonitorModule.h.

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

std::string EcalBarrelMonitorModule::prefixME_ [private]

Definition at line 85 of file EcalBarrelMonitorModule.h.

Referenced by beginJob(), cleanup(), EcalBarrelMonitorModule(), endJob(), and setup().

Definition at line 59 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), EcalBarrelMonitorModule(), endJob(), and endRun().

Definition at line 62 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().

Definition at line 78 of file EcalBarrelMonitorModule.h.

Referenced by analyze(), and EcalBarrelMonitorModule().