00001 // -*-c++-*- 00002 #ifndef L1Scalers_H 00003 #define L1Scalers_H 00004 // $Id: L1Scalers.h,v 1.9 2008/09/17 20:56:02 lorenzo Exp $ 00005 00006 #include "FWCore/Framework/interface/Frameworkfwd.h" 00007 #include "FWCore/Framework/interface/EDAnalyzer.h" 00008 00009 #include "DQMServices/Core/interface/DQMStore.h" 00010 00011 #include "DQMServices/Core/interface/MonitorElement.h" 00012 #include "FWCore/ParameterSet/interface/InputTag.h" 00013 00014 class L1Scalers: public edm::EDAnalyzer 00015 { 00016 public: 00018 L1Scalers(const edm::ParameterSet& ps); 00019 00021 virtual ~L1Scalers() {}; 00022 00024 void beginJob(const edm::EventSetup& c); 00025 00026 // Endjob 00027 void endJob(void); 00028 00030 void beginRun(const edm::Run& run, const edm::EventSetup& c); 00031 00033 void endRun(const edm::Run& run, const edm::EventSetup& c); 00034 00035 00036 00039 void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 00040 const edm::EventSetup& c); 00041 00042 void analyze(const edm::Event& e, const edm::EventSetup& c) ; 00043 00044 00045 private: 00046 DQMStore * dbe_; 00047 int nev_; // Number of events processed 00048 00049 bool verbose_; 00050 edm::InputTag l1GtDataSource_; // L1 Scalers 00051 std::string folderName_; // dqm folder name 00052 MonitorElement *l1scalers_; 00053 MonitorElement *l1techScalers_; 00054 MonitorElement *l1Correlations_; 00055 MonitorElement *bxNum_; 00056 00057 00058 // 2d versions 00059 MonitorElement *l1scalersBx_; 00060 MonitorElement *l1techScalersBx_; 00061 00062 // Int 00063 MonitorElement *nLumiBlock_; 00064 MonitorElement *l1AlgoCounter_; //for total Algo Rate 00065 MonitorElement *l1TtCounter_; //for total TT Rate 00066 // Hacks for early running 00067 MonitorElement *pixFedSize_; 00068 MonitorElement *hfEnergy_; 00069 // steal from HLTrigger/special 00070 unsigned int threshold_; 00071 unsigned int fedStart_, fedStop_ ; 00072 //total Rates 00073 unsigned int rateAlgoCounter_; //for total Algo Rate 00074 unsigned int rateTtCounter_; //for total TT Rate 00075 00076 edm::InputTag fedRawCollection_; 00077 00078 std::vector<int> maskedList_; 00079 edm::InputTag HcalRecHitCollection_; 00080 // END HACK 00081 00082 00083 }; 00084 00085 #endif // L1Scalers_H