00001 #ifndef SiPixelEDAClient_H 00002 #define SiPixelEDAClient_H 00003 00004 #include "FWCore/Framework/interface/EDAnalyzer.h" 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 #include "FWCore/Framework/interface/ESHandle.h" 00007 #include "FWCore/Framework/interface/LuminosityBlock.h" 00008 #include "FWCore/Framework/interface/Run.h" 00009 00010 #include "EventFilter/Utilities/interface/ModuleWeb.h" 00011 00012 #include <iostream> 00013 #include <fstream> 00014 #include <string> 00015 #include <vector> 00016 #include <map> 00017 00018 class DQMStore; 00019 class SiPixelWebInterface; 00020 class SiPixelTrackerMapCreator; 00021 class SiPixelInformationExtractor; 00022 class SiPixelActionExecutor; 00023 00024 class SiPixelEDAClient: public edm::EDAnalyzer, public evf::ModuleWeb{ 00025 00026 public: 00027 00028 SiPixelEDAClient(const edm::ParameterSet& ps); 00029 virtual ~SiPixelEDAClient(); 00030 00031 void defaultWebPage(xgi::Input *in, 00032 xgi::Output *out); 00033 void publish(xdata::InfoSpace *){}; 00034 00035 protected: 00036 00037 void beginJob(edm::EventSetup const& eSetup); 00038 void beginRun(edm::Run const& run, 00039 edm::EventSetup const& eSetup); 00040 void analyze(edm::Event const& e, 00041 edm::EventSetup const& eSetup); 00042 void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, 00043 edm::EventSetup const& context) ; 00044 void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, 00045 edm::EventSetup const& c); 00046 void endRun(edm::Run const& run, 00047 edm::EventSetup const& eSetup); 00048 void endJob(); 00049 00050 private: 00051 00052 unsigned long long m_cacheID_; 00053 int nLumiSecs_; 00054 int nEvents_; 00055 00056 DQMStore* bei_; 00057 00058 SiPixelWebInterface* sipixelWebInterface_; 00059 SiPixelInformationExtractor* sipixelInformationExtractor_; 00060 SiPixelActionExecutor* sipixelActionExecutor_; 00061 SiPixelTrackerMapCreator* trackerMapCreator_; 00062 00063 int tkMapFrequency_; 00064 int summaryFrequency_; 00065 unsigned int staticUpdateFrequency_; 00066 bool actionOnLumiSec_; 00067 bool actionOnRunEnd_; 00068 int evtOffsetForInit_; 00069 std::string summaryXMLfile_; 00070 bool hiRes_; 00071 double noiseRate_; 00072 int noiseRateDenominator_; 00073 bool offlineXMLfile_; 00074 int nFEDs_; 00075 bool Tier0Flag_; 00076 00077 std::ostringstream html_out_; 00078 }; 00079 00080 00081 #endif