CMS 3D CMS Logo

DQMRivetClient.h
Go to the documentation of this file.
1 #ifndef GeneratorInterface_RivetInterface_DQMRivetClient_H
2 #define GeneratorInterface_RivetInterface_DQMRivetClient_H
3 
7 #include <set>
8 #include <string>
9 #include <vector>
10 #include <TH1.h>
11 
12 class DQMRivetClient : public edm::one::EDAnalyzer<edm::one::SharedResources, edm::one::WatchRuns> {
13 public:
16  struct NormOption {
18  };
19 
21  ~DQMRivetClient() override{};
22 
23  void analyze(const edm::Event& event, const edm::EventSetup& eventSetup) override{};
24 
25  void endJob() override;
26 
27  void beginRun(const edm::Run& r, const edm::EventSetup& c) override {}
28  void endRun(const edm::Run& r, const edm::EventSetup& c) override;
29 
30  struct LumiOption {
32  double xsection;
33  };
34 
37  double scale;
38  };
39 
40  void normalizeToIntegral(const std::string& startDir, const std::string& histName, const std::string& normHistName);
41  void normalizeToLumi(const std::string& startDir,
42  const std::string& histName,
43  const std::string& normHistName,
44  double xsection);
45  void scaleByFactor(const std::string& startDir, const std::string& histName, double factor);
46 
47 private:
48  unsigned int verbose_;
49 
51  std::vector<std::string> subDirs_;
53 
54  std::vector<NormOption> normOptions_;
55  std::vector<LumiOption> lumiOptions_;
56  std::vector<ScaleFactorOption> scaleOptions_;
57 };
58 
59 #endif
dqm::legacy::DQMStore DQMStore
std::vector< ScaleFactorOption > scaleOptions_
dqm::legacy::MonitorElement MonitorElement
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override
std::vector< NormOption > normOptions_
DQMRivetClient(const edm::ParameterSet &pset)
~DQMRivetClient() override
void scaleByFactor(const std::string &startDir, const std::string &histName, double factor)
void beginRun(const edm::Run &r, const edm::EventSetup &c) override
std::string outputFileName_
void normalizeToIntegral(const std::string &startDir, const std::string &histName, const std::string &normHistName)
std::vector< LumiOption > lumiOptions_
unsigned int verbose_
DQMStore * theDQM
void endJob() override
std::vector< std::string > subDirs_
void endRun(const edm::Run &r, const edm::EventSetup &c) override
void normalizeToLumi(const std::string &startDir, const std::string &histName, const std::string &normHistName, double xsection)
Definition: event.py:1
Definition: Run.h:45