CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DQM/HcalMonitorTasks/interface/HcalCoarsePedestalMonitor.h

Go to the documentation of this file.
00001 #ifndef DQM_HCALMONITORTASKS_HCALCOARSEPEDESTALDQMONITOR_H
00002 #define DQM_HCALMONITORTASKS_HCALCOARSEPEDESTALDQMONITOR_H
00003 
00004 #include "DQM/HcalMonitorTasks/interface/HcalBaseDQMonitor.h"
00005 #include "EventFilter/HcalRawToDigi/interface/HcalUnpacker.h"
00006 #include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"
00007 #include "CalibFormats/HcalObjects/interface/HcalDbService.h"
00008 #include "CalibFormats/HcalObjects/interface/HcalDbRecord.h"
00009 
00018 class HcalCoarsePedestalMonitor: public HcalBaseDQMonitor {
00019 public:
00020   HcalCoarsePedestalMonitor(const edm::ParameterSet& ps); 
00021   ~HcalCoarsePedestalMonitor(); 
00022 
00023   void setup();
00024   void beginRun(const edm::Run& run, const edm::EventSetup& c);
00025   void cleanup();
00026 
00027   void analyze(const edm::Event& e, const edm::EventSetup& c);
00028 
00029   void processEvent(const HBHEDigiCollection& hbhe,
00030                     const HODigiCollection& ho,
00031                     const HFDigiCollection& hf,
00032                     const HcalUnpackerReport& report);
00033 
00034 
00035   // Begin LumiBlock
00036   void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00037                             const edm::EventSetup& c) ;
00038 
00039   // End LumiBlock
00040   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00041                           const edm::EventSetup& c);
00042 
00043 
00044   void endRun(const edm::Run& run, const edm::EventSetup& c);
00045   void endJob();
00046   void reset();
00047 
00048 private:  
00049  
00050   void fill_Nevents();
00051   void zeroCounters();
00052 
00053   // Store sum of pedestal values over all events
00054   EtaPhiHists CoarsePedestalsSumByDepth;
00055   EtaPhiHists CoarsePedestalsOccByDepth;
00056 
00057   double pedestalsum_[85][72][4]; // sum of pedestal values over all events
00058   int pedestalocc_[85][72][4];
00059 
00060   double ADCDiffThresh_; // store difference value that causes channel to be considered in error
00061 
00062   edm::InputTag digiLabel_;
00063   int minEvents_;
00064   bool excludeHORing2_;
00065 
00066 };
00067 
00068 #endif