00001 #ifndef EBIntegrityTask_H 00002 #define EBIntegrityTask_H 00003 00004 /* 00005 * \file EBIntegrityTask.h 00006 * 00007 * $Date: 2012/04/27 13:46:00 $ 00008 * $Revision: 1.33 $ 00009 * \author G. Della Ricca 00010 * 00011 */ 00012 00013 00014 #include "FWCore/Framework/interface/EDAnalyzer.h" 00015 #include "FWCore/Framework/interface/Event.h" 00016 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00017 00018 class MonitorElement; 00019 class DQMStore; 00020 00021 class EBIntegrityTask: public edm::EDAnalyzer{ 00022 00023 public: 00024 00026 EBIntegrityTask(const edm::ParameterSet& ps); 00027 00029 virtual ~EBIntegrityTask(); 00030 00031 protected: 00032 00034 void analyze(const edm::Event& e, const edm::EventSetup& c); 00035 00037 void beginJob(void); 00038 00040 void endJob(void); 00041 00043 void beginLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00044 00046 void endLuminosityBlock(const edm::LuminosityBlock& lumiBlock, const edm::EventSetup& iSetup); 00047 00049 void beginRun(const edm::Run & r, const edm::EventSetup & c); 00050 00052 void endRun(const edm::Run & r, const edm::EventSetup & c); 00053 00055 void reset(void); 00056 00058 void setup(void); 00059 00061 void cleanup(void); 00062 00063 private: 00064 00065 int ievt_; 00066 00067 DQMStore* dqmStore_; 00068 00069 std::string prefixME_; 00070 00071 std::string subfolder_; 00072 00073 bool enableCleanup_; 00074 00075 bool mergeRuns_; 00076 00077 edm::InputTag EBDetIdCollection0_; 00078 edm::InputTag EBDetIdCollection1_; 00079 edm::InputTag EBDetIdCollection2_; 00080 edm::InputTag EBDetIdCollection3_; 00081 edm::InputTag EBDetIdCollection4_; 00082 edm::InputTag EcalElectronicsIdCollection1_; 00083 edm::InputTag EcalElectronicsIdCollection2_; 00084 edm::InputTag EcalElectronicsIdCollection3_; 00085 edm::InputTag EcalElectronicsIdCollection4_; 00086 edm::InputTag EcalElectronicsIdCollection5_; 00087 edm::InputTag EcalElectronicsIdCollection6_; 00088 00089 MonitorElement* meIntegrityChId[36]; 00090 MonitorElement* meIntegrityGain[36]; 00091 MonitorElement* meIntegrityGainSwitch[36]; 00092 MonitorElement* meIntegrityTTId[36]; 00093 MonitorElement* meIntegrityTTBlockSize[36]; 00094 MonitorElement* meIntegrityMemChId[36]; 00095 MonitorElement* meIntegrityMemGain[36]; 00096 MonitorElement* meIntegrityMemTTId[36]; 00097 MonitorElement* meIntegrityMemTTBlockSize[36]; 00098 MonitorElement* meIntegrityDCCSize; 00099 MonitorElement* meIntegrityErrorsByLumi; 00100 00101 bool init_; 00102 00103 const static int chMemAbscissa[25]; 00104 const static int chMemOrdinate[25]; 00105 00106 }; 00107 00108 #endif