00001 #ifndef HcalLaserClient_H 00002 #define HcalLaserClient_H 00003 00004 #include "DQM/HcalMonitorClient/interface/HcalBaseClient.h" 00005 #include "CalibFormats/HcalObjects/interface/HcalDbService.h" 00006 #include "CalibFormats/HcalObjects/interface/HcalDbRecord.h" 00007 #include "CondFormats/HcalObjects/interface/HcalPedestal.h" 00008 #include "CondFormats/HcalObjects/interface/HcalPedestalWidth.h" 00009 #include "CondFormats/HcalObjects/interface/HcalElectronicsMap.h" 00010 #include <CalibCalorimetry/HcalAlgos/interface/HcalAlgoUtils.h> 00011 #include "FWCore/Framework/interface/ESHandle.h" 00012 #include "DQMServices/Core/interface/DQMStore.h" 00013 00014 class HcalLaserClient : public HcalBaseClient { 00015 00016 public: 00017 HcalLaserClient(); 00018 ~HcalLaserClient(); 00019 00020 void init( const edm::ParameterSet&, DQMStore*, const string ); 00021 void setup(void); 00022 00023 void beginJob(); 00024 void beginRun(const EventSetup& c); 00025 void analyze(void); 00026 void endRun(void); 00027 void endJob(void); 00028 00029 void cleanup(void); 00030 00031 void htmlOutput(int run, string htmlDir, string htmlName); 00032 void getHistograms(); 00033 void loadHistograms(TFile* f); 00034 00035 void report(); 00036 00037 void resetAllME(); 00038 void createTests(); 00039 00040 private: 00041 TH1F* TDCNumChannels_; 00042 TH1F* TDCTrigger_; 00043 TH1F* TDCRawOptosync_; 00044 TH1F* TDCClockOptosync_; 00045 TH1F* TDCRawOptosync_Trigger_; 00046 00047 TH1F* QADC_[32]; 00048 00049 TH1F* avg_shape_[4]; 00050 TH1F* avg_time_[4]; 00051 TH1F* avg_energy_[4]; 00052 00053 TH1F* rms_shape_[4]; 00054 TH1F* mean_shape_[4]; 00055 TH1F* rms_time_[4]; 00056 TH1F* mean_time_[4]; 00057 TH1F* rms_energy_[4]; 00058 TH1F* mean_energy_[4]; 00059 00060 TH2F* rms_energyDep_[4]; 00061 TH2F* mean_energyDep_[4]; 00062 TH2F* rms_timeDep_[4]; 00063 TH2F* mean_timeDep_[4]; 00064 TH2F* rms_shapeDep_[4]; 00065 TH2F* mean_shapeDep_[4]; 00066 }; 00067 00068 #endif