CMS 3D CMS Logo

EBPedestalClient.h

Go to the documentation of this file.
00001 #ifndef EBPedestalClient_H
00002 #define EBPedestalClient_H
00003 
00004 /*
00005  * \file EBPedestalClient.h
00006  *
00007  * $Date: 2008/06/25 15:08:17 $
00008  * $Revision: 1.76 $
00009  * \author G. Della Ricca
00010  * \author F. Cossutti
00011  *
00012 */
00013 
00014 #include <vector>
00015 #include <string>
00016 
00017 #include "TROOT.h"
00018 #include "TProfile2D.h"
00019 #include "TH1F.h"
00020 
00021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00022 
00023 #include "DQM/EcalBarrelMonitorClient/interface/EBClient.h"
00024 
00025 class MonitorElement;
00026 class DQMStore;
00027 class EcalCondDBInterface;
00028 class RunIOV;
00029 class MonRunIOV;
00030 
00031 class EBPedestalClient : public EBClient {
00032 
00033 friend class EBSummaryClient;
00034 
00035 public:
00036 
00038 EBPedestalClient(const edm::ParameterSet& ps);
00039 
00041 virtual ~EBPedestalClient();
00042 
00044 void analyze(void);
00045 
00046 // BeginJob
00047 void beginJob(DQMStore* dqmStore);
00048 
00049 // EndJob
00050 void endJob(void);
00051 
00052 // BeginRun
00053 void beginRun(void);
00054 
00055 // EndRun
00056 void endRun(void);
00057 
00059 void setup(void);
00060 
00061 // Cleanup
00062 void cleanup(void);
00063 
00065 void softReset(bool flag);
00066 
00067 // HtmlOutput
00068 void htmlOutput(int run, std::string& htmlDir, std::string& htmlName);
00069 
00070 // WriteDB
00071 bool writeDb(EcalCondDBInterface* econn, RunIOV* runiov, MonRunIOV* moniov, bool& status, bool flag);
00072 
00074 inline int getEvtPerJob() { return ievt_; }
00075 inline int getEvtPerRun() { return jevt_; }
00076 
00077 private:
00078 
00079 int ievt_;
00080 int jevt_;
00081 
00082 bool cloneME_;
00083 
00084 bool verbose_;
00085 bool debug_;
00086 
00087 std::string prefixME_;
00088 
00089 bool enableCleanup_;
00090 
00091 std::vector<int> superModules_;
00092 
00093 DQMStore* dqmStore_;
00094 
00095 TProfile2D* h01_[36];
00096 TProfile2D* h02_[36];
00097 TProfile2D* h03_[36];
00098 
00099 TProfile2D* j01_[36];
00100 TProfile2D* j02_[36];
00101 TProfile2D* j03_[36];
00102 
00103 TProfile2D* k01_[36];
00104 TProfile2D* k02_[36];
00105 TProfile2D* k03_[36];
00106 
00107 MonitorElement* meg01_[36];
00108 MonitorElement* meg02_[36];
00109 MonitorElement* meg03_[36];
00110 
00111 MonitorElement* meg04_[36];
00112 MonitorElement* meg05_[36];
00113 
00114 MonitorElement* mep01_[36];
00115 MonitorElement* mep02_[36];
00116 MonitorElement* mep03_[36];
00117 
00118 MonitorElement* mer01_[36];
00119 MonitorElement* mer02_[36];
00120 MonitorElement* mer03_[36];
00121 
00122 MonitorElement* mer04_[36];
00123 MonitorElement* mer05_[36];
00124 
00125 MonitorElement* mes01_[36];
00126 MonitorElement* mes02_[36];
00127 MonitorElement* mes03_[36];
00128 
00129 MonitorElement* met01_[36];
00130 MonitorElement* met02_[36];
00131 MonitorElement* met03_[36];
00132 
00133 TProfile* i01_[36];
00134 TProfile* i02_[36];
00135 
00136 // Quality check on crystals, one per each gain
00137 
00138 float expectedMean_[3];
00139 float discrepancyMean_[3];
00140 float RMSThreshold_[3];
00141 
00142 // Quality check on PNs
00143 
00144 float expectedMeanPn_[2];
00145 float discrepancyMeanPn_[2];
00146 float RMSThresholdPn_[2];
00147 
00148 };
00149 
00150 #endif

Generated on Tue Jun 9 17:32:41 2009 for CMSSW by  doxygen 1.5.4