00001 #ifndef DTMonitorClient_DTDCSByLumiSummary_H 00002 #define DTMonitorClient_DTDCSByLumiSummary_H 00003 00015 #include "FWCore/Framework/interface/Frameworkfwd.h" 00016 #include "FWCore/Framework/interface/EDAnalyzer.h" 00017 00018 #include <FWCore/Framework/interface/LuminosityBlock.h> 00019 00020 #include <map> 00021 00022 class DQMStore; 00023 class MonitorElement; 00024 class DTTimeEvolutionHisto; 00025 00026 class DTDCSByLumiSummary : public edm::EDAnalyzer { 00027 00028 public: 00029 00031 DTDCSByLumiSummary(const edm::ParameterSet& pset); 00032 00034 virtual ~DTDCSByLumiSummary(); 00035 00036 00037 private: 00038 00039 // Operations 00040 virtual void beginJob(); 00041 virtual void beginLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& setup); 00042 virtual void analyze(const edm::Event& event, const edm::EventSetup& setup); 00043 virtual void endLuminosityBlock(const edm::LuminosityBlock& lumi, const edm::EventSetup& setup); 00044 virtual void endRun(const edm::Run& run, const edm::EventSetup& setup); 00045 virtual void endJob() ; 00046 00047 DQMStore *theDQMStore; 00048 00049 MonitorElement* totalDCSFraction; 00050 MonitorElement* globalHVSummary; 00051 00052 std::vector<DTTimeEvolutionHisto*> hDCSFracTrend; 00053 std::vector<MonitorElement*> totalDCSFractionWh; 00054 00055 std::map<int, std::vector<float> > dcsFracPerLumi; 00056 00057 }; 00058 00059 00060 #endif 00061