Skip to content

Commit 4937757

Browse files
committed
miscellaneous improvements to HLTriggerOffline/Scouting plugins
1 parent b1b2374 commit 4937757

16 files changed

+872
-1052
lines changed

HLTriggerOffline/Scouting/plugins/ElectronEfficiencyPlotter.cc

Lines changed: 55 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,76 @@
1-
#include "ElectronEfficiencyPlotter.h"
2-
3-
// Framework
1+
// system includes
42
#include <cmath>
53
#include <string>
64

5+
// user includes
6+
#include "DQMServices/Core/interface/DQMEDHarvester.h"
77
#include "DQMServices/Core/interface/DQMStore.h"
88
#include "DataFormats/Common/interface/Handle.h"
99
#include "FWCore/Framework/interface/ESHandle.h"
1010
#include "FWCore/Framework/interface/Event.h"
1111
#include "FWCore/Framework/interface/EventSetup.h"
12+
#include "FWCore/Framework/interface/Frameworkfwd.h"
13+
#include "FWCore/Framework/interface/LuminosityBlock.h"
1214
#include "FWCore/Framework/interface/MakerMacros.h"
1315
#include "FWCore/MessageLogger/interface/MessageLogger.h"
1416
#include "FWCore/ParameterSet/interface/ParameterSet.h"
17+
#include "FWCore/ServiceRegistry/interface/Service.h"
18+
19+
// ROOT includes
1520
#include "TF1.h"
1621
#include "TH1F.h"
1722

23+
class ElectronEfficiencyPlotter : public DQMEDHarvester {
24+
public:
25+
// Constructor
26+
ElectronEfficiencyPlotter(const edm::ParameterSet &ps);
27+
// Destructor
28+
~ElectronEfficiencyPlotter() override = default;
29+
30+
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions);
31+
32+
protected:
33+
// DQM Client Diagnostic
34+
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override;
35+
36+
private:
37+
// counters
38+
const int ptBin_;
39+
const double ptMin_;
40+
const double ptMax_;
41+
const std::string ID_;
42+
const std::string theFolder_;
43+
const std::string sourceFolder_;
44+
45+
MonitorElement *h_eff_pt_EB_doubleEG_HLT;
46+
MonitorElement *h_eff_pt_EE_doubleEG_HLT;
47+
MonitorElement *h_eff_pt_EB_singlePhoton_HLT;
48+
MonitorElement *h_eff_pt_EE_singlePhoton_HLT;
49+
50+
void calculateEfficiency(MonitorElement *Numerator, MonitorElement *Denominator, MonitorElement *Efficiency);
51+
};
52+
1853
using namespace edm;
1954
using namespace std;
2055

2156
// Constructor
22-
ElectronEfficiencyPlotter::ElectronEfficiencyPlotter(const edm::ParameterSet &ps) {
23-
ptBin_ = ps.getParameter<int>("ptBin");
24-
ptMin_ = ps.getParameter<double>("ptMin");
25-
ptMax_ = ps.getParameter<double>("ptMax");
26-
27-
ID_ = ps.getParameter<string>("sctElectronID");
28-
theFolder_ = ps.getParameter<string>("folder");
29-
sourceFolder_ = ps.getParameter<string>("srcFolder");
57+
ElectronEfficiencyPlotter::ElectronEfficiencyPlotter(const edm::ParameterSet &ps)
58+
: ptBin_{ps.getParameter<int>("ptBin")},
59+
ptMin_{ps.getParameter<double>("ptMin")},
60+
ptMax_{ps.getParameter<double>("ptMax")},
61+
ID_{ps.getParameter<string>("sctElectronID")},
62+
theFolder_{ps.getParameter<string>("folder")},
63+
sourceFolder_{ps.getParameter<string>("srcFolder")} {}
64+
65+
void ElectronEfficiencyPlotter::fillDescriptions(edm::ConfigurationDescriptions &descriptions) {
66+
edm::ParameterSetDescription desc;
67+
desc.add<int>("ptBin", 5);
68+
desc.add<double>("ptMin", 0);
69+
desc.add<double>("ptMax", 100);
70+
desc.add<string>("sctElectronID", {});
71+
desc.add<string>("folder", {});
72+
desc.add<string>("srcFolder", {});
73+
descriptions.addWithDefaultLabel(desc);
3074
}
3175

3276
void ElectronEfficiencyPlotter::dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) {

HLTriggerOffline/Scouting/plugins/ElectronEfficiencyPlotter.h

Lines changed: 0 additions & 45 deletions
This file was deleted.

0 commit comments

Comments
 (0)