00001 #ifndef EBRawDataTask_H 00002 #define EBRawDataTask_H 00003 00004 /* 00005 * \file EBRawDataTask.h 00006 * 00007 * $Date: 2012/05/14 20:36:37 $ 00008 * $Revision: 1.13 $ 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 MonitorElement; 00018 class DQMStore; 00019 00020 class EBRawDataTask : public edm::EDAnalyzer { 00021 00022 public: 00023 00025 EBRawDataTask(const edm::ParameterSet& ps); 00026 00028 virtual ~EBRawDataTask(); 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 FEDRawDataCollection_; 00077 edm::InputTag EcalRawDataCollection_; 00078 00079 MonitorElement* meEBCRCErrors_; 00080 MonitorElement* meEBEventTypePreCalibrationBX_; 00081 MonitorElement* meEBEventTypeCalibrationBX_; 00082 MonitorElement* meEBEventTypePostCalibrationBX_; 00083 MonitorElement* meEBRunNumberErrors_; 00084 MonitorElement* meEBOrbitNumberErrors_; 00085 MonitorElement* meEBTriggerTypeErrors_; 00086 MonitorElement* meEBCalibrationEventErrors_; 00087 MonitorElement* meEBL1ADCCErrors_; 00088 MonitorElement* meEBBunchCrossingDCCErrors_; 00089 MonitorElement* meEBL1AFEErrors_; 00090 MonitorElement* meEBBunchCrossingFEErrors_; 00091 MonitorElement* meEBL1ATCCErrors_; 00092 MonitorElement* meEBBunchCrossingTCCErrors_; 00093 MonitorElement* meEBL1ASRPErrors_; 00094 MonitorElement* meEBBunchCrossingSRPErrors_; 00095 00096 MonitorElement* meEBSynchronizationErrorsByLumi_; 00097 00098 MonitorElement* meEBSynchronizationErrorsTrend_; 00099 00100 int ls_; 00101 00102 float fatalErrors_; 00103 00104 bool init_; 00105 00106 float calibrationBX_; 00107 00108 enum activeEVM { TCS, FDLEVM }; 00109 00110 }; 00111 00112 #endif