Go to the documentation of this file.00001 #ifndef DQM_BeamMonitor_AlcaBeamMonitorClient_h
00002 #define DQM_BeamMonitor_AlcaBeamMonitorClient_h
00003
00011
00012 #include <map>
00013 #include <vector>
00014 #include <string>
00015
00016 #include "FWCore/Framework/interface/Frameworkfwd.h"
00017 #include "FWCore/Framework/interface/EDAnalyzer.h"
00018 #include "FWCore/Framework/interface/Event.h"
00019 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00020 #include "DQMServices/Core/interface/DQMStore.h"
00021 #include "DQMServices/Core/interface/MonitorElement.h"
00022 #include "DataFormats/Provenance/interface/LuminosityBlockID.h"
00023
00024
00025
00026 class AlcaBeamMonitorClient : public edm::EDAnalyzer {
00027 public:
00028 AlcaBeamMonitorClient( const edm::ParameterSet& );
00029 ~AlcaBeamMonitorClient();
00030
00031 protected:
00032
00033 void beginJob (void);
00034 void beginRun (const edm::Run& iRun, const edm::EventSetup& iSetup);
00035 void analyze (const edm::Event& iEvent, const edm::EventSetup& iSetup);
00036 void beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& iSetup);
00037 void endLuminosityBlock (const edm::LuminosityBlock& iLumi, const edm::EventSetup& iSetup);
00038 void endRun (const edm::Run& iRun, const edm::EventSetup& iSetup);
00039 void endJob (const edm::LuminosityBlock& iLumi, const edm::EventSetup& iSetup);
00040
00041 private:
00042
00043 typedef std::map<std::string,std::map<std::string,std::map<std::string,MonitorElement*> > > HistosContainer;
00044
00045
00046 typedef std::map<std::string,std::map<std::string,std::map<std::string,int> > > PositionContainer;
00047
00048
00049 edm::ParameterSet parameters_;
00050 std::string monitorName_;
00051
00052
00053 int numberOfValuesToSave_;
00054 DQMStore* dbe_;
00055
00056
00057 HistosContainer histosMap_;
00058 std::vector<std::string> varNamesV_;
00059 std::multimap<std::string,std::string> histoByCategoryNames_;
00060 std::map<edm::LuminosityBlockNumber_t,std::vector<double> > valuesMap_;
00061 PositionContainer positionsMap_;
00062 };
00063
00064 #endif
00065