Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
#include <iostream>

#include "FWCore/ServiceRegistry/interface/Service.h"
#include "FWCore/MessageLogger/interface/MessageLogger.h"
#include "FWCore/Framework/interface/MakerMacros.h"
#include "FWCore/Framework/interface/Frameworkfwd.h"

#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Framework/interface/EventSetup.h"

#include "DataFormats/EcalDetId/interface/ESDetId.h"

#include "CondFormats/DataRecord/interface/RunSummaryRcd.h"
#include "CondFormats/RunInfo/interface/RunSummary.h"
#include "CondFormats/RunInfo/interface/RunInfo.h"

#include "DQMServices/Core/interface/DQMStore.h"

#include "DQM/EcalPreshowerMonitorModule/interface/ESDataCertificationTask.h"

using namespace cms;
using namespace edm;
using namespace std;

ESDataCertificationTask::ESDataCertificationTask(const ParameterSet& ps) {
  usesResource("DQMStore");
  dqmStore_ = Service<DQMStore>().operator->();

  prefixME_ = ps.getUntrackedParameter<string>("prefixME", "");

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

  meESDataCertificationSummary_ = nullptr;
  meESDataCertificationSummaryMap_ = nullptr;
}

ESDataCertificationTask::~ESDataCertificationTask() {}

void ESDataCertificationTask::beginJob(void) {
  char histo[200];

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

    sprintf(histo, "CertificationSummary");
    meESDataCertificationSummary_ = dqmStore_->bookFloat(histo);
    meESDataCertificationSummary_->Fill(0.0);

    sprintf(histo, "CertificationSummaryMap");
    meESDataCertificationSummaryMap_ = dqmStore_->book2D(histo, histo, 40, 0., 40., 40, 0., 40.);
    meESDataCertificationSummaryMap_->setAxisTitle("X", 1);
    meESDataCertificationSummaryMap_->setAxisTitle("Y", 2);
  }
}

void ESDataCertificationTask::endJob(void) {}

void ESDataCertificationTask::beginLuminosityBlock(const edm::LuminosityBlock& lumiBlock,
                                                   const edm::EventSetup& iSetup) {
  this->reset();
}

void ESDataCertificationTask::endLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) {}

void ESDataCertificationTask::reset(void) {
  if (meESDataCertificationSummary_)
    meESDataCertificationSummary_->Reset();

  if (meESDataCertificationSummaryMap_)
    meESDataCertificationSummaryMap_->Reset();
}

void ESDataCertificationTask::analyze(const Event& e, const EventSetup& c) {}

DEFINE_FWK_MODULE(ESDataCertificationTask);