00001 #ifndef DQWorkerClient_H 00002 #define DQWorkerClient_H 00003 00004 #include <utility> 00005 00006 #include "DQM/EcalCommon/interface/DQWorker.h" 00007 00008 #include "CondFormats/EcalObjects/interface/EcalDQMChannelStatus.h" 00009 #include "CondFormats/EcalObjects/interface/EcalDQMTowerStatus.h" 00010 #include "CondFormats/EcalObjects/interface/EcalDQMStatusHelper.h" 00011 00012 namespace ecaldqm { 00013 class DQWorkerClient : public DQWorker { 00014 public: 00015 DQWorkerClient(const edm::ParameterSet&, const edm::ParameterSet&, std::string const&); 00016 virtual ~DQWorkerClient() {} 00017 00018 virtual void endLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &); 00019 00020 virtual void initialize(); 00021 00022 void reset(); 00023 00024 virtual void producePlots() = 0; 00025 00026 enum Sources { 00027 nSources 00028 }; 00029 00030 static EcalDQMChannelStatus const* channelStatus; 00031 static EcalDQMTowerStatus const* towerStatus; 00032 00033 protected: 00034 void source_(unsigned, std::string const&, unsigned, edm::ParameterSet const&); 00035 void fillQuality_(unsigned, DetId const&, uint32_t, float); 00036 00037 std::vector<MESet const*> sources_; 00038 }; 00039 00040 } 00041 #endif