CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/DQM/HcalMonitorTasks/interface/HcalZDCMonitor.h

Go to the documentation of this file.
00001 #ifndef DQM_HCALMONITORTASKS_HCALZDCMONITOR_H
00002 #define DQM_HCALMONITORTASKS_HCALZDCMONITOR_H
00003 
00004 #include "DQM/HcalMonitorTasks/interface/HcalBaseMonitor.h"
00005 #include "DQMServices/Core/interface/DQMStore.h"
00006 #include "DQMServices/Core/interface/MonitorElement.h"
00007 #include "EventFilter/HcalRawToDigi/interface/HcalUnpacker.h"
00008 #include "CondFormats/HcalObjects/interface/HcalPedestal.h"
00009 #include "CondFormats/HcalObjects/interface/HcalPedestalWidth.h"
00010 #include <cmath>
00011 
00019 class HcalZDCMonitor: public HcalBaseMonitor
00020 {
00021  public:
00022   HcalZDCMonitor();
00023   ~HcalZDCMonitor();
00024   void setup(const edm::ParameterSet& ps, DQMStore* dbe);
00025   void processEvent(const ZDCDigiCollection& digi,
00026                     const ZDCRecHitCollection& rechit);
00027   //void done();
00028   void reset();
00029   void endLuminosityBlock(void);
00030  private:
00031   //virtual void endJob();
00032   //void endLuminosityBlock(void);
00033   //void zeroCounters();
00034   //void fillHistos();
00035   //void setZDClabels(MonitorElement* h);
00036   double getTime(std::vector<double> fData, unsigned int ts_min, unsigned int ts_max, double& fSum);
00037   //int getTSMax(std::vector<double> fData);
00038   //bool isGood(std::vector<double> fData, double fCut, double fPercentage);
00039 
00040   bool checkZDC_;
00041   int NumBadZDC;
00042   MonitorElement* ProblemsVsLB_ZDC;
00043 
00044   const HcalQIEShape* shape_;
00045   const HcalQIECoder* channelCoder_;
00046   HcalCalibrations calibs_;
00047   int ievt_;
00048   //int zdc_checkNevents_;
00049   MonitorElement* meEVT_;
00050   MonitorElement* h_2D_saturation;
00051   MonitorElement* h_2D_charge;
00052   MonitorElement* h_2D_TSMean;
00053   MonitorElement* h_2D_RecHitEnergy;
00054   MonitorElement* h_2D_RecHitTime;
00055   MonitorElement* h_ZDCP_EM_Pulse[5];
00056   MonitorElement* h_ZDCM_EM_Pulse[5];
00057   MonitorElement* h_ZDCP_EM_Charge[5];
00058   MonitorElement* h_ZDCM_EM_Charge[5];
00059   MonitorElement* h_ZDCP_EM_TSMean[5];
00060   MonitorElement* h_ZDCM_EM_TSMean[5];
00061   MonitorElement* h_ZDCP_HAD_Pulse[4];
00062   MonitorElement* h_ZDCM_HAD_Pulse[4];
00063   MonitorElement* h_ZDCP_HAD_Charge[4];
00064   MonitorElement* h_ZDCM_HAD_Charge[4];
00065   MonitorElement* h_ZDCP_HAD_TSMean[4];
00066   MonitorElement* h_ZDCM_HAD_TSMean[4];
00067   MonitorElement* h_ZDCP_EM_RecHitEnergy[5];
00068   MonitorElement* h_ZDCM_EM_RecHitEnergy[5];
00069   MonitorElement* h_ZDCP_EM_RecHitTiming[5];
00070   MonitorElement* h_ZDCM_EM_RecHitTiming[5];
00071   MonitorElement* h_ZDCP_HAD_RecHitEnergy[4];
00072   MonitorElement* h_ZDCM_HAD_RecHitEnergy[4];
00073   MonitorElement* h_ZDCP_HAD_RecHitTiming[4];
00074   MonitorElement* h_ZDCM_HAD_RecHitTiming[4];
00075 };
00076 
00077 #endif