CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/DQMServices/Components/src/DQMEventInfo.h

Go to the documentation of this file.
00001 #ifndef DQMEventInfo_H
00002 #define DQMEventInfo_H
00003 
00004 /*
00005  * \file DQMEventInfo.h
00006  *
00007  * $Date: 2010/09/13 12:43:25 $
00008  * $Revision: 1.17 $
00009  * \author M. Zanetti - INFN Padova
00010  *
00011 */
00012 
00013 #include <FWCore/Framework/interface/Frameworkfwd.h>
00014 #include <FWCore/Framework/interface/EDAnalyzer.h>
00015 #include <FWCore/Framework/interface/ESHandle.h>
00016 #include <FWCore/Framework/interface/Event.h>
00017 #include <FWCore/Framework/interface/Run.h>
00018 #include <FWCore/Framework/interface/MakerMacros.h>
00019 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00020 #include <FWCore/ServiceRegistry/interface/Service.h>
00021 
00022 #include <DQMServices/Core/interface/DQMStore.h>
00023 #include <DQMServices/Core/interface/MonitorElement.h>
00024 
00025 #include <memory>
00026 #include <iostream>
00027 #include <fstream>
00028 #include <string>
00029 #include <vector>
00030 #include <map>
00031 #include <sys/time.h>
00032 
00033 class DQMEventInfo: public edm::EDAnalyzer{
00034 
00035 public:
00036 
00038   DQMEventInfo(const edm::ParameterSet& ps);
00039   
00041   virtual ~DQMEventInfo();
00042 
00043 protected:
00044 
00046   void analyze(const edm::Event& e, const edm::EventSetup& c);
00047   void beginRun(const edm::Run& r, const edm::EventSetup& c) ;
00048   void beginLuminosityBlock(const edm::LuminosityBlock& l, const edm::EventSetup& c);
00049 
00050 private:
00051 
00052 //  double getUTCtime(timeval* a, timeval* b = NULL);
00053 
00054   DQMStore *dbe_;
00055 
00056   edm::ParameterSet parameters_;
00057   std::string eventInfoFolder_;
00058   
00059 //  timeval currentTime_, lastUpdateTime_, lastAvgTime_;
00060 //  timeval runStartTime_;
00061 //  float evtRateWindow_;
00062   double currentTime_, lastUpdateTime_, lastAvgTime_;
00063   double runStartTime_;
00064   double evtRateWindow_;
00065   int64_t evtRateCount_;
00066   int64_t pEvent_;
00067 
00072   MonitorElement * runId_;
00073   MonitorElement * runStartTimeStamp_;  
00074   MonitorElement * eventId_;
00075   MonitorElement * lumisecId_;
00076   MonitorElement * eventTimeStamp_;
00077 
00081   MonitorElement * nUpdates_;          
00082   MonitorElement * processId_;         
00083   MonitorElement * processStartTimeStamp_; 
00084   MonitorElement * processTimeStamp_;  
00085   MonitorElement * processLatency_;    
00086   MonitorElement * processEventRate_;  
00087   MonitorElement * processEvents_;     
00088   MonitorElement * hostName_;          
00089   MonitorElement * processName_;       
00090   MonitorElement * workingDir_;        
00091   MonitorElement * cmsswVer_;          
00092   MonitorElement * dqmPatch_;          
00093   MonitorElement * errSummary_;        
00094   MonitorElement * errSummaryEtaPhi_;  
00095   MonitorElement * errSummarySegment_[10];
00096 };
00097 
00098 #endif