00001 #include "FWCore/Framework/interface/Frameworkfwd.h" 00002 #include "FWCore/Framework/interface/EDAnalyzer.h" 00003 #include "FWCore/Framework/interface/Event.h" 00004 #include "FWCore/Framework/interface/LuminosityBlock.h" 00005 #include "FWCore/Framework/interface/Run.h" 00006 #include "FWCore/Framework/interface/MakerMacros.h" 00007 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00008 #include "FWCore/ServiceRegistry/interface/Service.h" 00009 00010 #include "DQMServices/Core/interface/MonitorElement.h" 00011 #include "DQMServices/Core/interface/DQMStore.h" 00012 #include "DQM/SiPixelCommon/interface/SiPixelHistogramId.h" 00013 00014 #include "CondFormats/SiPixelObjects/interface/SiPixelPerformanceSummary.h" 00015 00016 // #include "DQM/SiPixelHistoricInfoClient/interface/SiPixelHistoricInfoWebInterface.h" 00017 00018 00019 class SiPixelHistoricInfoEDAClient : public edm::EDAnalyzer { 00020 public: 00021 explicit SiPixelHistoricInfoEDAClient(const edm::ParameterSet&); 00022 ~SiPixelHistoricInfoEDAClient(); 00023 00024 private: 00025 virtual void beginJob(); 00026 virtual void beginRun(const edm::Run&, const edm::EventSetup&); 00027 virtual void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); 00028 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00029 virtual void endLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); 00030 virtual void endRun(const edm::Run&, const edm::EventSetup&); 00031 virtual void endJob(); 00032 00033 void retrieveMEs(); 00034 void fillPerformanceSummary() const; 00035 void writeDB() const; 00036 void saveFile(std::string filename) const { dbe_->save(filename); } 00037 00038 private: 00039 bool printDebug_; 00040 bool writeHisto_; 00041 std::string outputDir_; 00042 00043 edm::ParameterSet parameterSet_; 00044 DQMStore* dbe_; 00045 00046 bool firstEventInRun; 00047 int nEventsInRun; 00048 00049 SiPixelHistogramId histogramManager; 00050 std::map< uint32_t, std::vector<MonitorElement*> > mapOfdetIDtoMEs; 00051 SiPixelPerformanceSummary* performanceSummary; 00052 00053 // SiPixelHistoricInfoWebInterface* webInterface_; 00054 // bool defaultWebPageCreated_; 00055 }; 00056