Go to the documentation of this file.00001 #ifndef RPCDqmClient_H
00002 #define RPCDqmClient_H
00003
00004 #include "DQM/RPCMonitorClient/interface/RPCClient.h"
00005 #include "FWCore/Framework/interface/Frameworkfwd.h"
00006 #include <FWCore/Framework/interface/EDAnalyzer.h>
00007 #include <FWCore/Framework/interface/ESHandle.h>
00008
00009 #include "DQMServices/Core/interface/MonitorElement.h"
00010
00011 #include <string>
00012 #include <vector>
00013
00014 class RPCDqmClient:public edm::EDAnalyzer{
00015
00016 public:
00017
00019 RPCDqmClient(const edm::ParameterSet& ps);
00020
00022 virtual ~ RPCDqmClient();
00023
00025 void beginJob( );
00026
00027
00028 void beginRun(const edm::Run& , const edm::EventSetup&);
00029
00031 void beginLuminosityBlock(edm::LuminosityBlock const& , edm::EventSetup const& ) ;
00032
00034 void analyze(const edm::Event& , const edm::EventSetup& );
00035
00037 void endLuminosityBlock(edm::LuminosityBlock const& , edm::EventSetup const& );
00038
00039
00040 void endRun(const edm::Run& , const edm::EventSetup& );
00041
00043 void endJob();
00044
00045 protected:
00046 void makeClientMap(void);
00047 void getMonitorElements(const edm::Run&, const edm::EventSetup& );
00048 private:
00049
00050 bool offlineDQM_;
00051 int prescaleGlobalFactor_, minimumEvents_, numLumBlock_;
00052
00053 bool useRollInfo_,enableDQMClients_ , init_;
00054 std::string prefixDir_;
00055 std::string globalFolder_;
00056 std::vector<std::string> clientList_;
00057 int lumiCounter_;
00058 MonitorElement * RPCEvents_;
00059
00060
00061 std::vector<std::string> clientNames_,clientHisto_;
00062 std::vector<RPCClient*> clientModules_;
00063
00064 std::vector<int> clientTag_;
00065
00066 edm::ParameterSet parameters_;
00067
00068 DQMStore* dbe_;
00069
00070
00071 };
00072 #endif