00001 00010 #ifndef RPCClient_H 00011 #define RPCClient_H 00012 00013 00014 00015 #include "DQMServices/Core/interface/MonitorElement.h" 00016 #include "DQMServices/Core/interface/DQMStore.h" 00017 00018 #include <DataFormats/MuonDetId/interface/RPCDetId.h> 00019 00020 #include <FWCore/Framework/interface/Event.h> 00021 #include <FWCore/Framework/interface/Run.h> 00022 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00023 #include <FWCore/Framework/interface/LuminosityBlock.h> 00024 //#include "FWCore/ServiceRegistry/interface/Service.h" 00025 00026 #include <map> 00027 #include <vector> 00028 #include <string> 00029 00030 00031 class RPCClient { 00032 00033 public: 00034 00035 //RPCClient(const edm::ParameterSet& ps) {} 00036 virtual ~RPCClient(void) {} 00037 00038 virtual void beginLuminosityBlock(edm::LuminosityBlock const& , edm::EventSetup const& )=0 ; 00039 00040 virtual void clientOperation(edm::EventSetup const& c)=0; 00041 00042 virtual void getMonitorElements(std::vector<MonitorElement *> &, std::vector<RPCDetId> &)= 0; 00043 00044 virtual void endLuminosityBlock(edm::LuminosityBlock const& , edm::EventSetup const& )=0; 00045 00046 virtual void analyze(const edm::Event & , const edm::EventSetup& ) = 0; 00047 00048 virtual void beginJob(DQMStore * , std::string ) = 0; 00049 00050 virtual void endJob(void) = 0; 00051 00052 virtual void beginRun(const edm::Run& , const edm::EventSetup& ) = 0; 00053 00054 virtual void endRun(const edm::Run& , const edm::EventSetup& ) = 0; 00055 00056 00057 // private: 00058 //parameters used to configure quality tests 00059 00060 00061 00062 }; 00063 00064 #endif