CMS 3D CMS Logo

/data/git/CMSSW_5_3_11_patch5/src/DQM/HcalMonitorTasks/interface/HcalDetDiagNoiseMonitor.h

Go to the documentation of this file.
00001 #ifndef DQM_HCALMONITORTASKS_HCALDETDIAGNOISEMONITOR_H
00002 #define DQM_HCALMONITORTASKS_HCALDETDIAGNOISEMONITOR_H
00003 
00004 // user include files
00005 #include "FWCore/Framework/interface/Frameworkfwd.h"
00006 #include "FWCore/Framework/interface/Event.h"
00007 #include "FWCore/Framework/interface/MakerMacros.h"
00008 
00009 #include "DQM/HcalMonitorTasks/interface/HcalBaseDQMonitor.h"
00010 
00011 #include "DataFormats/JetReco/interface/CaloJetCollection.h"
00012 #include "DataFormats/JetReco/interface/CaloJet.h"
00013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00014 
00015 // forward declarations
00016 class HcalDetDiagNoiseRMSummary; 
00017 class DQMStore;
00018 class MonitorElement;
00019 class HcalDbService;
00020 class HcalLogicalMap;
00021 class HcalLogicalMapGenerator;
00022 
00023 // #########################################################################################
00024 
00033 class HcalDetDiagNoiseMonitor:public HcalBaseDQMonitor {
00034 public:
00035   HcalDetDiagNoiseMonitor(const edm::ParameterSet& ps); 
00036   ~HcalDetDiagNoiseMonitor(); 
00037 
00038   void setup();
00039   void analyze(edm::Event const&e, edm::EventSetup const&s);
00040   void done();
00041   void reset();
00042   void beginRun(const edm::Run& run, const edm::EventSetup& c);
00043   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,const edm::EventSetup& c);
00044 
00045   void cleanup(); 
00046   void UpdateHistos();
00047   int  GetStatistics(){ return ievt_; }
00048 private:
00049   edm::InputTag L1ADataLabel_;
00050   edm::InputTag digiLabel_;
00051   edm::InputTag rawDataLabel_;
00052   
00053   HcalLogicalMap          *lmap;
00054   HcalLogicalMapGenerator *gen;
00055  
00056   std::string OutputFilePath;
00057   bool Overwrite;
00058   int dataset_seq_number;
00059  
00060   bool UseDB;
00061   
00062   double  HPDthresholdHi;
00063   double  HPDthresholdLo;
00064   double  SpikeThreshold;
00065   
00066   void SaveRates();
00067   
00068   int         ievt_;
00069   bool        newLS;
00070   int         FirstOrbit;
00071   int         LastOrbit;
00072   int         FirstOrbitLS;
00073   int         LastOrbitLS;
00074   int         run_number;
00075   int         NoisyEvents;
00076   bool        LocalRun; 
00077 
00078   MonitorElement *meEVT_;
00079   
00080   MonitorElement *HBP_Rate50;
00081   MonitorElement *HBM_Rate50;
00082   MonitorElement *HEP_Rate50;
00083   MonitorElement *HEM_Rate50;
00084   MonitorElement *HBP_Rate300;
00085   MonitorElement *HBM_Rate300;
00086   MonitorElement *HEP_Rate300;
00087   MonitorElement *HEM_Rate300;
00088 
00089   MonitorElement *HO0_Rate50;
00090   MonitorElement *HO1P_Rate50;
00091   MonitorElement *HO1M_Rate50;
00092   MonitorElement *HO0_Rate300;
00093   MonitorElement *HO1P_Rate300;
00094   MonitorElement *HO1M_Rate300;
00095 
00096   MonitorElement *HB_RBXmapSpikeCnt;
00097   MonitorElement *HE_RBXmapSpikeCnt;
00098   MonitorElement *HO_RBXmapSpikeCnt;
00099   
00100   MonitorElement *PixelMult;
00101   MonitorElement *HPDEnergy;
00102   MonitorElement *RBXEnergy;
00103   MonitorElement *NZeroes;
00104   MonitorElement *TriggerBx11;
00105   MonitorElement *TriggerBx12;
00106   
00107   
00108   HcalDetDiagNoiseRMSummary* RMSummary;
00109 
00110 };
00111 
00112 #endif