00001 #ifndef EELaserTask_H 00002 #define EELaserTask_H 00003 00004 /* 00005 * \file EELaserTask.h 00006 * 00007 * $Date: 2012/04/27 13:46:13 $ 00008 * $Revision: 1.18 $ 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 EELaserTask: public edm::EDAnalyzer{ 00021 00022 public: 00023 00025 EELaserTask(const edm::ParameterSet& ps); 00026 00028 virtual ~EELaserTask(); 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 beginRun(const edm::Run & r, const edm::EventSetup & c); 00043 00045 void endRun(const edm::Run & r, const edm::EventSetup & c); 00046 00048 void reset(void); 00049 00051 void setup(void); 00052 00054 void cleanup(void); 00055 00056 private: 00057 00058 int ievt_; 00059 00060 DQMStore* dqmStore_; 00061 00062 std::string prefixME_; 00063 00064 bool enableCleanup_; 00065 00066 bool mergeRuns_; 00067 00068 edm::InputTag EcalRawDataCollection_; 00069 edm::InputTag EEDigiCollection_; 00070 edm::InputTag EcalPnDiodeDigiCollection_; 00071 edm::InputTag EcalUncalibratedRecHitCollection_; 00072 std::vector<int> laserWavelengths_; 00073 00074 MonitorElement* meShapeMapL1_[18]; 00075 MonitorElement* meAmplMapL1_[18]; 00076 MonitorElement* meTimeMapL1_[18]; 00077 MonitorElement* meAmplPNMapL1_[18]; 00078 MonitorElement* mePnAmplMapG01L1_[18]; 00079 MonitorElement* mePnPedMapG01L1_[18]; 00080 MonitorElement* mePnAmplMapG16L1_[18]; 00081 MonitorElement* mePnPedMapG16L1_[18]; 00082 00083 MonitorElement* meShapeMapL2_[18]; 00084 MonitorElement* meAmplMapL2_[18]; 00085 MonitorElement* meTimeMapL2_[18]; 00086 MonitorElement* meAmplPNMapL2_[18]; 00087 MonitorElement* mePnAmplMapG01L2_[18]; 00088 MonitorElement* mePnPedMapG01L2_[18]; 00089 MonitorElement* mePnAmplMapG16L2_[18]; 00090 MonitorElement* mePnPedMapG16L2_[18]; 00091 00092 MonitorElement* meShapeMapL3_[18]; 00093 MonitorElement* meAmplMapL3_[18]; 00094 MonitorElement* meTimeMapL3_[18]; 00095 MonitorElement* meAmplPNMapL3_[18]; 00096 MonitorElement* mePnAmplMapG01L3_[18]; 00097 MonitorElement* mePnPedMapG01L3_[18]; 00098 MonitorElement* mePnAmplMapG16L3_[18]; 00099 MonitorElement* mePnPedMapG16L3_[18]; 00100 00101 MonitorElement* meShapeMapL4_[18]; 00102 MonitorElement* meAmplMapL4_[18]; 00103 MonitorElement* meTimeMapL4_[18]; 00104 MonitorElement* meAmplPNMapL4_[18]; 00105 MonitorElement* mePnAmplMapG01L4_[18]; 00106 MonitorElement* mePnPedMapG01L4_[18]; 00107 MonitorElement* mePnAmplMapG16L4_[18]; 00108 MonitorElement* mePnPedMapG16L4_[18]; 00109 00110 MonitorElement* meAmplSummaryMapL1_[2]; 00111 MonitorElement* meAmplSummaryMapL2_[2]; 00112 MonitorElement* meAmplSummaryMapL3_[2]; 00113 MonitorElement* meAmplSummaryMapL4_[2]; 00114 00115 bool init_; 00116 00117 }; 00118 00119 #endif