00001 #ifndef EBDcsInfoTask_h 00002 #define EBDcsInfoTask_h 00003 00004 /* 00005 * \file EBDcsInfoTask.h 00006 * 00007 * $Date: 2010/08/08 08:56:00 $ 00008 * $Revision: 1.9 $ 00009 * \author E. Di Marco 00010 * 00011 */ 00012 00013 #include "FWCore/Framework/interface/EDAnalyzer.h" 00014 #include "FWCore/Framework/interface/Event.h" 00015 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00016 00017 class EBDcsInfoTask: public edm::EDAnalyzer{ 00018 00019 public: 00020 00022 EBDcsInfoTask(const edm::ParameterSet& ps); 00023 00025 virtual ~EBDcsInfoTask(); 00026 00027 protected: 00028 00030 void analyze(const edm::Event& e, const edm::EventSetup& c); 00031 00033 void beginJob(void); 00034 00036 void endJob(void); 00037 00039 void beginLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00040 00042 void endLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00043 00045 void beginRun(const edm::Run & r, const edm::EventSetup & c); 00046 00048 void endRun(const edm::Run & r, const edm::EventSetup & c); 00049 00051 void reset(void); 00052 00054 void cleanup(void); 00055 00056 private: 00057 00058 void fillMonitorElements(int ready[72][34]); 00059 00060 DQMStore* dqmStore_; 00061 00062 std::string prefixME_; 00063 00064 bool enableCleanup_; 00065 00066 bool mergeRuns_; 00067 00068 MonitorElement* meEBDcsFraction_; 00069 MonitorElement* meEBDcsActive_[36]; 00070 MonitorElement* meEBDcsActiveMap_; 00071 00072 int readyRun[72][34]; 00073 int readyLumi[72][34]; 00074 00075 }; 00076 00077 #endif