00001 #ifndef EcalDQMonitorClient_H 00002 #define EcalDQMonitorClient_H 00003 00004 #include "DQM/EcalCommon/interface/EcalDQMonitor.h" 00005 00006 namespace edm{ 00007 class ParameterSet; 00008 class Run; 00009 class LuminosityBlock; 00010 class Event; 00011 class EventSetup; 00012 class ConfigurationDescriptions; 00013 } 00014 00015 namespace ecaldqm{ 00016 class DQWorkerClient; 00017 } 00018 00019 class EcalDQMonitorClient : public EcalDQMonitor { 00020 public: 00021 EcalDQMonitorClient(const edm::ParameterSet &); 00022 ~EcalDQMonitorClient(); 00023 00024 static void fillDescriptions(edm::ConfigurationDescriptions &); 00025 00026 private: 00027 void beginRun(const edm::Run&, const edm::EventSetup&); 00028 void endRun(const edm::Run&, const edm::EventSetup&); 00029 00030 void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); 00031 void endLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); 00032 00033 void analyze(const edm::Event&, const edm::EventSetup&) {} 00034 00035 void runWorkers(); 00036 00037 // list of workers 00038 std::vector<ecaldqm::DQWorkerClient*> workers_; 00039 // end lumi switch 00040 bool runAtEndLumi_; 00041 int lumiStatus_; 00042 }; 00043 00044 #endif