00001 #ifndef EBStatusFlagsTask_H 00002 #define EBStatusFlagsTask_H 00003 00004 /* 00005 * \file EBStatusFlagsTask.h 00006 * 00007 * $Date: 2012/04/27 13:46:00 $ 00008 * $Revision: 1.12 $ 00009 * \author G. Della Ricca 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 MonitorElement; 00018 class DQMStore; 00019 00020 class EBStatusFlagsTask: public edm::EDAnalyzer{ 00021 00022 public: 00023 00025 EBStatusFlagsTask(const edm::ParameterSet& ps); 00026 00028 virtual ~EBStatusFlagsTask(); 00029 00030 protected: 00031 00033 void analyze(const edm::Event& e, const edm::EventSetup& c); 00034 00036 void beginJob(void); 00037 00039 void endJob(void); 00040 00042 void beginLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00043 00045 void endLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00046 00048 void beginRun(const edm::Run & r, const edm::EventSetup & c); 00049 00051 void endRun(const edm::Run & r, const edm::EventSetup & c); 00052 00054 void reset(void); 00055 00057 void setup(void); 00058 00060 void cleanup(void); 00061 00062 private: 00063 00064 int ievt_; 00065 00066 DQMStore* dqmStore_; 00067 00068 std::string prefixME_; 00069 00070 std::string subfolder_; 00071 00072 bool enableCleanup_; 00073 00074 bool mergeRuns_; 00075 00076 edm::InputTag EcalRawDataCollection_; 00077 00078 MonitorElement* meEvtType_[36]; 00079 00080 MonitorElement* meFEchErrors_[36][3]; 00081 MonitorElement* meFEchErrorsByLumi_; 00082 00083 bool init_; 00084 00085 }; 00086 00087 #endif