Back to home page

Project CMSSW displayed by LXR

 
 

    


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