00001 #ifndef ESPedestalClient_H 00002 #define ESPedestalClient_H 00003 00004 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 00007 #include "DQM/EcalPreshowerMonitorClient/interface/ESClient.h" 00008 00009 #include <TF1.h> 00010 00011 00012 // 00013 // class decleration 00014 // 00015 00016 00017 class MonitorElement; 00018 class DQMStore; 00019 00020 class ESPedestalClient : public ESClient{ 00021 00022 friend class ESSummaryClient; 00023 00024 public: 00025 ESPedestalClient(const edm::ParameterSet& ps); 00026 virtual ~ESPedestalClient(); 00027 void analyze(void); 00028 void beginJob(DQMStore* dqmStore); 00029 void endJob(void); 00030 void beginRun(void); 00031 void endRun(void); 00032 void setup(void); 00033 void cleanup(void); 00034 void endLumiAnalyze(void) {} 00035 00037 inline int getEvtPerJob() { return ievt_; } 00038 inline int getEvtPerRun() { return jevt_; } 00039 00040 00041 private: 00042 00043 int ievt_; 00044 int jevt_; 00045 bool enableCleanup_; 00046 bool verbose_; 00047 bool debug_; 00048 bool fitPedestal_; 00049 00050 00051 edm::FileInPath lookup_; 00052 std::string prefixME_; 00053 00054 DQMStore* dqmStore_; 00055 00056 MonitorElement *hPed_[2][2][40][40]; 00057 MonitorElement *hTotN_[2][2][40][40]; 00058 00059 TF1 *fg; 00060 00061 int nLines_; 00062 // int runNum_, runtype_, seqtype_, dac_, gain_, precision_; 00063 // int firstDAC_, nDAC_, isPed_, vDAC_[5], layer_; 00064 00065 int senZ_[4288], senP_[4288], senX_[4288], senY_[4288]; 00066 00067 }; 00068 00069 #endif //ESPedestalClient_H