-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathBERegion.h
More file actions
56 lines (38 loc) · 1.4 KB
/
BERegion.h
File metadata and controls
56 lines (38 loc) · 1.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef BEREGION_H
#define BEREGION_H
#include <yaml-cpp/yaml.h>
#include "Tree.h"
class BERegion final : private Tree {
public:
// Constructor
BERegion(TTreeReader &reader, const std::string="Others");
bool operator()();
private:
std::string berCat_;
// BER configuration.
YAML::Node cfg_;
// All BER parameters
float minPfMet_, minDPhi_, maxPfMetPhi_, minPfMetPhi_, minJetPt_, maxJetEta_,
minJetEta_, maxJetChef_, minJetNeef_, minJetNhef_, minMuPt_,
maxAddMuPt_, minDeltaR_, pfCanMinPt_;
int pfCanPdgId_, jetPtGt25Num_;
long unsigned int jetPtGt200Num_, minMuNum_;
// Check whether the event is in BER of BadChCand filters.
bool isBadChCandBER();
// Check whether the event is in BER of GlbSTHalo and GlbTHalo filters.
bool isGlbSTHaloBER();
// Check whether the event is in BER of BadPFMuon filters.
bool isBadPFMuonBER();
// Check whether the event is in BER of EcalBadCal filters.
bool isEcalBadCalBER();
// Check whether the event is in BER of HBHENoise and HBHEIsoNoise filters.
bool isHBHENoiseBER();
// Check whether the event is in BER of other filters.
bool isOthersBER();
// A pointer to one of functions checking whether the event is in BER or not.
bool (BERegion::*isBER)();
// Return the value of given field from configuration file.
template <typename T>
T Get(std::string const field);
};
#endif