00001 #ifndef TKStatus_H 00002 #define TKStatus_H 00003 00012 // C++ 00013 #include <string> 00014 // CMS 00015 #include "FWCore/Framework/interface/Frameworkfwd.h" 00016 #include "FWCore/Framework/interface/EDAnalyzer.h" 00017 #include "FWCore/Framework/interface/Event.h" 00018 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00019 #include <fstream> 00020 00021 00022 // 00023 // class declaration 00024 // 00025 00026 class TKStatus : public edm::EDAnalyzer { 00027 public: 00028 TKStatus( const edm::ParameterSet& ); 00029 ~TKStatus(); 00030 00031 protected: 00032 00033 // BeginJob 00034 void beginJob(); 00035 00036 // BeginRun 00037 void beginRun(const edm::Run& r, const edm::EventSetup& c); 00038 00039 void analyze(const edm::Event& e, const edm::EventSetup& c) ; 00040 00041 void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 00042 const edm::EventSetup& context) ; 00043 00044 void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, 00045 const edm::EventSetup& c); 00046 // EndRun 00047 void endRun(const edm::Run& r, const edm::EventSetup& c); 00048 // Endjob 00049 void endJob(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& c); 00050 00051 private: 00052 00053 void dumpTkDcsStatus(std::string &); 00054 00055 edm::ParameterSet parameters_; 00056 std::string dcsTkFileName_; 00057 std::ofstream fasciiDcsTkFile; 00058 00059 bool debug_; 00060 bool checkStatus_; 00061 int countEvt_; //counter 00062 int countLumi_; //counter 00063 int beginLumi_; 00064 int endLumi_; 00065 int lastlumi_; // previous LS processed 00066 bool dcsTk[6]; 00067 // ----------member data --------------------------- 00068 00069 // 00070 std::time_t tmpTime; 00071 std::time_t refTime; 00072 edm::TimeValue_t ftimestamp; 00073 int runnum; 00074 }; 00075 00076 #endif 00077