ATLAS Offline Software
forwardElectronMonTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 //
7 // 2014-10-22 Author: Remi Lafaye (Annecy)
8 //
10 
11 #ifndef forwardElectronMonTool_H
12 #define forwardElectronMonTool_H
13 
14 #include "egammaMonToolBase.h"
15 
17 {
18  public:
19 
20  forwardElectronMonTool(const std::string& type, const std::string& name, const IInterface* parent);
21 
22  virtual ~forwardElectronMonTool() = default;
23 
24  virtual StatusCode initialize() override;
25  virtual StatusCode bookHistograms() override;
26  virtual StatusCode fillHistograms() override;
27 
28  private:
29 
30  protected:
31  // Properties
32  SG::ReadHandleKey<xAOD::ElectronContainer> m_ForwardElectronContainer{this, "ForwardElectronContainer", "egammaForwardCollection", "Name of the forward electron collection"}; // Container name for forwardElectrons
33 
34  // Loose electrons histograms
35  TH1 * m_hN; // Histogram for number of electrons
36  TH1 * m_hEt; // Histogram for electron transverse energies
37  TH1 * m_hEta; // Histogram for electron eta
38  TH1 * m_hPhi; // Histogram for electron phi
39  TH2 * m_hEtaPhi; // Histogram for electron eta,phi for candidates with more than 10 GeV energy
40  //TH1 * m_hTopoEtCone40; // Histogram for calo based isolation energy
41  TH1 * m_hTime; // Histogram for forward cluster time
42 
43  // Loose electrons per region histograms
44  std::vector<TH1*> m_hvN; // Histograms for number of electrons
45  std::vector<TH1*> m_hvEt; // Histograms for electron transverse energies
46  std::vector<TH1*> m_hvEta; // Histograms for electron transverse eta
47  std::vector<TH1*> m_hvPhi; // Histograms for electron transverse phi
48  //std::vector<TH1*> m_hvTopoEtCone40; // Histograms for electron calo-based isolation transverse energies
49  std::vector<TH1*> m_hvTime; // Histograms for electron times
50 
51  // Loose electron ID per region histograms
52  std::vector<TH1*> m_hvDensity; // energy density
53  std::vector<TH1*> m_hvFrac; // max energy fraction
54  std::vector<TH1*> m_hvLongitu; // longitudinal moment
55  std::vector<TH1*> m_hvLambda; // second lambda
56  std::vector<TH1*> m_hvLateral; // lateral moment
57  std::vector<TH1*> m_hvSecondR; // second R
58  std::vector<TH1*> m_hvCenterL; // center lambda
59 
60  // Tight electrons histograms
61  TH1 * m_hTightN; // Histogram for number of electrons
62  TH1 * m_hTightEt; // Histogram for electron transverse energies
63  TH1 * m_hTightEta; // Histogram for electron eta
64  TH1 * m_hTightPhi; // Histogram for electron phi
65  TH2 * m_hTightEtaPhi; // Histogram for electron eta,phi
66  //TH1 * m_hTightTopoEtCone40; // Histogram for calo based isolation energy
67  TH1 * m_hTightTime; // Histogram for forward cluster time
68 
69  // Tight electrons per region histograms
70  std::vector<TH1*> m_hvTightN; // Histograms for number of electrons
71  std::vector<TH1*> m_hvTightEt; // Histograms for electron transverse energies
72  std::vector<TH1*> m_hvTightEta; // Histograms for electron transverse eta
73  std::vector<TH1*> m_hvTightPhi; // Histograms for electron transverse phi
74  //std::vector<TH1*> m_hvTightTopoEtCone40; // Histograms for electron calo-based isolation transverse energies
75  std::vector<TH1*> m_hvTightTime; // Histograms for electron times
76 
77  // Loose electron ID per region histograms
78  std::vector<TH1*> m_hvTightDensity; // energy density
79  std::vector<TH1*> m_hvTightFrac; // max energy fraction
80  std::vector<TH1*> m_hvTightLongitu; // longitudinal moment
81  std::vector<TH1*> m_hvTightLambda; // second lambda
82  std::vector<TH1*> m_hvTightLateral; // lateral moment
83  std::vector<TH1*> m_hvTightSecondR; // second R
84  std::vector<TH1*> m_hvTightCenterL; // center lambda
85 
86  TH1 *m_hLB_N; // Histogram for number of forward electrons vs LB
87  unsigned int m_lumiBlockNumber;
90  unsigned int m_nForwardElectrons;
91 
92 };
93 
94 #endif
forwardElectronMonTool::m_hvFrac
std::vector< TH1 * > m_hvFrac
Definition: forwardElectronMonTool.h:53
forwardElectronMonTool::m_nForwardElectronsPerLumiBlock
std::vector< int > m_nForwardElectronsPerLumiBlock
Definition: forwardElectronMonTool.h:89
forwardElectronMonTool::m_hvPhi
std::vector< TH1 * > m_hvPhi
Definition: forwardElectronMonTool.h:47
forwardElectronMonTool::m_hEta
TH1 * m_hEta
Definition: forwardElectronMonTool.h:37
forwardElectronMonTool::m_hPhi
TH1 * m_hPhi
Definition: forwardElectronMonTool.h:38
forwardElectronMonTool::m_hvLongitu
std::vector< TH1 * > m_hvLongitu
Definition: forwardElectronMonTool.h:54
forwardElectronMonTool::m_hTightEt
TH1 * m_hTightEt
Definition: forwardElectronMonTool.h:62
forwardElectronMonTool::m_hvTightTime
std::vector< TH1 * > m_hvTightTime
Definition: forwardElectronMonTool.h:75
forwardElectronMonTool::forwardElectronMonTool
forwardElectronMonTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: forwardElectronMonTool.cxx:83
forwardElectronMonTool::m_hEt
TH1 * m_hEt
Definition: forwardElectronMonTool.h:36
forwardElectronMonTool
Definition: forwardElectronMonTool.h:17
egammaMonToolBase.h
forwardElectronMonTool::m_hvCenterL
std::vector< TH1 * > m_hvCenterL
Definition: forwardElectronMonTool.h:58
forwardElectronMonTool::m_hvTightPhi
std::vector< TH1 * > m_hvTightPhi
Definition: forwardElectronMonTool.h:73
forwardElectronMonTool::m_hvTightSecondR
std::vector< TH1 * > m_hvTightSecondR
Definition: forwardElectronMonTool.h:83
forwardElectronMonTool::m_hvTightEt
std::vector< TH1 * > m_hvTightEt
Definition: forwardElectronMonTool.h:71
SG::ReadHandleKey< xAOD::ElectronContainer >
forwardElectronMonTool::m_hvSecondR
std::vector< TH1 * > m_hvSecondR
Definition: forwardElectronMonTool.h:57
forwardElectronMonTool::m_hvEt
std::vector< TH1 * > m_hvEt
Definition: forwardElectronMonTool.h:45
forwardElectronMonTool::m_hvTightLambda
std::vector< TH1 * > m_hvTightLambda
Definition: forwardElectronMonTool.h:81
forwardElectronMonTool::m_hvTightDensity
std::vector< TH1 * > m_hvTightDensity
Definition: forwardElectronMonTool.h:78
forwardElectronMonTool::m_hTightEtaPhi
TH2 * m_hTightEtaPhi
Definition: forwardElectronMonTool.h:65
egammaMonToolBase
Definition: egammaMonToolBase.h:72
forwardElectronMonTool::m_hTightN
TH1 * m_hTightN
Definition: forwardElectronMonTool.h:61
forwardElectronMonTool::m_hvLateral
std::vector< TH1 * > m_hvLateral
Definition: forwardElectronMonTool.h:56
forwardElectronMonTool::m_hTightEta
TH1 * m_hTightEta
Definition: forwardElectronMonTool.h:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
forwardElectronMonTool::m_hvTightN
std::vector< TH1 * > m_hvTightN
Definition: forwardElectronMonTool.h:70
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TH2
Definition: rootspy.cxx:373
forwardElectronMonTool::m_hvTightFrac
std::vector< TH1 * > m_hvTightFrac
Definition: forwardElectronMonTool.h:79
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
forwardElectronMonTool::m_hvDensity
std::vector< TH1 * > m_hvDensity
Definition: forwardElectronMonTool.h:52
forwardElectronMonTool::m_hTightTime
TH1 * m_hTightTime
Definition: forwardElectronMonTool.h:67
forwardElectronMonTool::m_hEtaPhi
TH2 * m_hEtaPhi
Definition: forwardElectronMonTool.h:39
forwardElectronMonTool::m_ForwardElectronContainer
SG::ReadHandleKey< xAOD::ElectronContainer > m_ForwardElectronContainer
Definition: forwardElectronMonTool.h:32
forwardElectronMonTool::m_hTime
TH1 * m_hTime
Definition: forwardElectronMonTool.h:41
forwardElectronMonTool::bookHistograms
virtual StatusCode bookHistograms() override
An inheriting class should either override this function or bookHists().
Definition: forwardElectronMonTool.cxx:113
forwardElectronMonTool::~forwardElectronMonTool
virtual ~forwardElectronMonTool()=default
forwardElectronMonTool::m_lumiBlockNumber
unsigned int m_lumiBlockNumber
Definition: forwardElectronMonTool.h:87
forwardElectronMonTool::fillHistograms
virtual StatusCode fillHistograms() override
An inheriting class should either override this function or fillHists().
Definition: forwardElectronMonTool.cxx:184
forwardElectronMonTool::m_nForwardElectrons
unsigned int m_nForwardElectrons
Definition: forwardElectronMonTool.h:90
forwardElectronMonTool::m_hvTightCenterL
std::vector< TH1 * > m_hvTightCenterL
Definition: forwardElectronMonTool.h:84
forwardElectronMonTool::m_hvTightLongitu
std::vector< TH1 * > m_hvTightLongitu
Definition: forwardElectronMonTool.h:80
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TH1
Definition: rootspy.cxx:268
forwardElectronMonTool::initialize
virtual StatusCode initialize() override
Definition: forwardElectronMonTool.cxx:106
forwardElectronMonTool::m_hvTime
std::vector< TH1 * > m_hvTime
Definition: forwardElectronMonTool.h:49
forwardElectronMonTool::m_hvN
std::vector< TH1 * > m_hvN
Definition: forwardElectronMonTool.h:44
forwardElectronMonTool::m_hvTightEta
std::vector< TH1 * > m_hvTightEta
Definition: forwardElectronMonTool.h:72
forwardElectronMonTool::m_hLB_N
TH1 * m_hLB_N
Definition: forwardElectronMonTool.h:86
forwardElectronMonTool::m_hN
TH1 * m_hN
Definition: forwardElectronMonTool.h:35
forwardElectronMonTool::m_nForwardElectronsInCurrentLB
unsigned int m_nForwardElectronsInCurrentLB
Definition: forwardElectronMonTool.h:88
forwardElectronMonTool::m_hTightPhi
TH1 * m_hTightPhi
Definition: forwardElectronMonTool.h:64
forwardElectronMonTool::m_hvLambda
std::vector< TH1 * > m_hvLambda
Definition: forwardElectronMonTool.h:55
forwardElectronMonTool::m_hvTightLateral
std::vector< TH1 * > m_hvTightLateral
Definition: forwardElectronMonTool.h:82
forwardElectronMonTool::m_hvEta
std::vector< TH1 * > m_hvEta
Definition: forwardElectronMonTool.h:46