File indexing completed on 2024-04-06 12:07:15
0001 #ifndef EcalDQMonitorClient_H
0002 #define EcalDQMonitorClient_H
0003
0004 #include "DQMServices/Core/interface/DQMEDHarvester.h"
0005 #include "DQM/EcalCommon/interface/EcalDQMonitor.h"
0006 #include "DQM/EcalCommon/interface/StatusManager.h"
0007
0008 #include "DQM/EcalMonitorClient/interface/DQWorkerClient.h"
0009 #include "CondFormats/EcalObjects/interface/EcalDQMChannelStatus.h"
0010 #include "CondFormats/EcalObjects/interface/EcalDQMTowerStatus.h"
0011 #include "CondFormats/DataRecord/interface/EcalDQMChannelStatusRcd.h"
0012 #include "CondFormats/DataRecord/interface/EcalDQMTowerStatusRcd.h"
0013
0014 class EcalDQMonitorClient : public DQMEDHarvester, public ecaldqm::EcalDQMonitor {
0015 public:
0016 EcalDQMonitorClient(edm::ParameterSet const&);
0017 ~EcalDQMonitorClient() override;
0018
0019 static void fillDescriptions(edm::ConfigurationDescriptions&);
0020
0021 private:
0022 void beginRun(edm::Run const&, edm::EventSetup const&) override;
0023 void endRun(edm::Run const&, edm::EventSetup const&) override;
0024 void dqmEndLuminosityBlock(DQMStore::IBooker&,
0025 DQMStore::IGetter&,
0026 edm::LuminosityBlock const&,
0027 edm::EventSetup const&) override;
0028 void dqmEndJob(DQMStore::IBooker&, DQMStore::IGetter&) override;
0029
0030 void runWorkers(DQMStore::IGetter&, ecaldqm::DQWorkerClient::ProcessType);
0031
0032 unsigned eventCycleLength_;
0033 unsigned iEvt_;
0034 edm::ESGetToken<EcalDQMChannelStatus, EcalDQMChannelStatusRcd> cStHndl;
0035 edm::ESGetToken<EcalDQMTowerStatus, EcalDQMTowerStatusRcd> tStHndl;
0036 ecaldqm::StatusManager statusManager_;
0037 };
0038
0039 #endif