CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/DQM/L1TMonitorClient/interface/L1TEMUEventInfoClient.h

Go to the documentation of this file.
00001 #ifndef DQM_L1TMONITORCLIENT_L1TEMUEventInfoClient_H
00002 #define DQM_L1TMONITORCLIENT_L1TEMUEventInfoClient_H
00003 
00023 // system include files
00024 #include <memory>
00025 #include <iostream>
00026 #include <fstream>
00027 #include <string>
00028 #include <vector>
00029 
00030 // user include files
00031 
00032 #include "FWCore/Framework/interface/Frameworkfwd.h"
00033 #include "FWCore/Framework/interface/Event.h"
00034 #include "FWCore/Framework/interface/MakerMacros.h"
00035 #include <FWCore/Framework/interface/EDAnalyzer.h>
00036 #include "DQMServices/Core/interface/MonitorElement.h"
00037 
00038 // forward declarations
00039 class DQMStore;
00040 
00041 // class declaration
00042 class L1TEMUEventInfoClient: public edm::EDAnalyzer {
00043 
00044 public:
00045 
00047     L1TEMUEventInfoClient(const edm::ParameterSet&);
00048 
00050     virtual ~L1TEMUEventInfoClient();
00051 
00052 private:
00053 
00055     void beginJob();
00056 
00058     void beginRun(const edm::Run&, const edm::EventSetup&);
00059 
00061     void beginLuminosityBlock(const edm::LuminosityBlock&,
00062             const edm::EventSetup&);
00063 
00065     void analyze(const edm::Event&, const edm::EventSetup&);
00066 
00068     void
00069     endLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&);
00070 
00072     void endRun(const edm::Run&, const edm::EventSetup&);
00073 
00075     void endJob();
00076 
00077 private:
00078 
00080 
00081     bool m_verbose;
00082     std::string m_monitorDir;
00083 
00084     bool m_runInEventLoop;
00085     bool m_runInEndLumi;
00086     bool m_runInEndRun;
00087     bool m_runInEndJob;
00088 
00089     std::vector<edm::ParameterSet> m_l1Systems;
00090     std::vector<edm::ParameterSet> m_l1Objects;
00091     std::vector<std::string> m_maskL1Systems;
00092     std::vector<std::string> m_maskL1Objects;
00093 
00095 
00097     void initialize();
00098 
00100     void dumpContentMonitorElements();
00101 
00103     void bookHistograms();
00104 
00106     void readQtResults();
00107 
00109     size_t m_nrL1Systems;
00110 
00112     size_t m_nrL1Objects;
00113 
00116     size_t m_totalNrQtSummaryEnabled;
00117 
00118     std::vector<std::string> m_systemLabel;
00119     std::vector<std::string> m_systemLabelExt;
00120     std::vector<int> m_systemMask;
00121     std::vector<std::string> m_systemFolder;
00122 
00123     std::vector<std::vector<std::string> > m_systemQualityTestName;
00124     std::vector<std::vector<std::string> > m_systemQualityTestHist;
00125     std::vector<std::vector<unsigned int> > m_systemQtSummaryEnabled;
00126 
00127     std::vector<int> m_objectMask;
00128     std::vector<std::string> m_objectLabel;
00129     std::vector<std::string> m_objectFolder;
00130 
00131     std::vector<std::vector<std::string> > m_objectQualityTestName;
00132     std::vector<std::vector<std::string> > m_objectQualityTestHist;
00133     std::vector<std::vector<unsigned int> > m_objectQtSummaryEnabled;
00134 
00136 
00137     Float_t m_reportSummary;
00138     Float_t m_summarySum;
00139     std::vector<int> m_summaryContent;
00140 
00141 
00143     MonitorElement* m_meReportSummary;
00144 
00146     std::vector<MonitorElement*> m_meReportSummaryContent;
00147 
00149     MonitorElement* m_meReportSummaryMap;
00150 
00151     //
00152 
00153     DQMStore* m_dbe;
00154 
00155 
00156 };
00157 
00158 #endif