CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/DQM/EcalEndcapMonitorClient/interface/EEBeamCaloClient.h

Go to the documentation of this file.
00001 #ifndef EEBeamCaloClient_H
00002 #define EEBeamCaloClient_H
00003 
00004 /*
00005  * \file EEBeamCaloClient.h
00006  *
00007  * $Date: 2010/01/25 21:12:25 $
00008  * $Revision: 1.26 $
00009  * \author G. Della Ricca
00010  * \author A. Ghezzi
00011  *
00012 */
00013 
00014 #include <vector>
00015 #include <string>
00016 
00017 #include "TROOT.h"
00018 #include "TProfile2D.h"
00019 #include "TProfile.h"
00020 #include "TH1F.h"
00021 
00022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00023 
00024 #include "DQM/EcalEndcapMonitorClient/interface/EEClient.h"
00025 
00026 class MonitorElement;
00027 class DQMStore;
00028 #ifdef WITH_ECAL_COND_DB
00029 class EcalCondDBInterface;
00030 class MonRunIOV;
00031 #endif
00032 
00033 class EEBeamCaloClient : public EEClient {
00034 
00035 public:
00036 
00038 EEBeamCaloClient(const edm::ParameterSet& ps);
00039 
00041 virtual ~EEBeamCaloClient();
00042 
00044 void analyze(void);
00045 
00047 void beginJob(void);
00048 
00050 void endJob(void);
00051 
00053 void beginRun(void);
00054 
00056 void endRun(void);
00057 
00059 void setup(void);
00060 
00062 void cleanup(void);
00063 
00064 #ifdef WITH_ECAL_COND_DB
00065 
00066 bool writeDb(EcalCondDBInterface* econn, RunIOV* runiov, MonRunIOV* moniov, bool& status);
00067 #endif
00068 
00070 inline int getEvtPerJob() { return ievt_; }
00071 inline int getEvtPerRun() { return jevt_; }
00072 
00073 private:
00074 
00075 const static int cryInArray_ = 9;
00076 
00077 int ievt_;
00078 int jevt_;
00079 
00080 bool cloneME_;
00081 
00082 bool verbose_;
00083 bool debug_;
00084 
00085 std::string prefixME_;
00086 
00087 bool enableCleanup_;
00088 
00089 std::vector<int> superModules_;
00090 
00091 DQMStore* dqmStore_;
00092 
00093 //specific task me
00094 std::vector<int> checkedSteps_;
00095 float prescaling_;
00096 //specific task me
00097 
00098 TH1F* hBGains_[cryInArray_];
00099 TProfile* hBpulse_[cryInArray_];
00100 
00101 TH1F* hBEne1_;
00102 
00103 //TH1F* hBGainsMoving_[cryInArray_];
00104 //TH1F* hBEne1Moving_;
00105 
00106 TH1F* hBAllNeededCry_;
00107 
00108 TH1F* hBNumReadCry_;
00109 
00110 TH1F* hBE3x3_;
00111 
00112 TH1F* hBE3x3Moving_;
00113 
00114 TH2F* hBCryOnBeam_;
00115 
00116 TH2F* hBMaxEneCry_;
00117 
00118 TH1F* hBReadCryErrors_;
00119 
00120 TProfile* hBE1vsCry_;
00121 
00122 TProfile* hBE3x3vsCry_;
00123 
00124 TH1F* hBEntriesvsCry_;
00125 
00126 TH1F* hBcryDone_;
00127 
00128 TH2F* hBBeamCentered_;
00129 
00130 TH1F* hbTBmoving_;
00131 
00132 TH1F* hbE1MaxCry_;
00133 
00134 TH1F* hbDesync_;
00135 
00136 TProfile* pBCriInBeamEvents_;
00137 
00138 MonitorElement* meEEBCaloRedGreen_;
00139 MonitorElement* meEEBCaloRedGreenReadCry_;
00140 MonitorElement* meEEBCaloRedGreenSteps_;
00141 
00142 // quality check parameters
00143 
00144 int minEvtNum_;
00145 
00146 float aveEne1_;
00147 float E1Th_;
00148 float aveEne3x3_;
00149 float E3x3Th_;
00150 float RMSEne3x3_;
00151 float ReadCryErrThr_;
00152 
00153 };
00154 
00155 #endif