Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Reconstruction
Jet
JetJvtEfficiency
Root
FJvtSelectionTool.cxx
Go to the documentation of this file.
1
#include "
JetJvtEfficiency/FJvtSelectionTool.h
"
2
#include "
AsgDataHandles/ReadDecorHandle.h
"
3
4
namespace
{
5
const
static
std::map<std::string, float> workingPoints{{
"Loose"
, 0.5}, {
"Tight"
, 0.4}, {
"Tighter"
, 0.2}};
6
}
7
8
namespace
CP
{
9
10
FJvtSelectionTool::FJvtSelectionTool
(
const
std::string &
name
) :
JvtSelectionToolBase
(
name
) {
11
m_minEta
= 2.5;
12
m_maxEta
= 4.5;
13
}
14
15
StatusCode
FJvtSelectionTool::initialize
() {
16
ATH_CHECK
(
JvtSelectionToolBase::initialize
());
17
18
19
m_jvtAcc
=
SG::ConstAccessor<float>
(
m_jvtMoment
.key());
20
m_timingAcc
=
SG::ConstAccessor<float>
(
m_timingMoment
.key());
21
if
(
m_jetContainer
.empty()) {
22
ATH_MSG_WARNING
(
"No JetContainer set. This behaviour is deprecated"
);
23
ATH_CHECK
(
m_jvtMoment
.initialize(
false
));
24
ATH_CHECK
(
m_timingMoment
.initialize(
false
));
25
}
26
else
{
27
m_jvtMoment
=
m_jetContainer
+
"."
+
m_jvtMoment
.key();
28
ATH_CHECK
(
m_jvtMoment
.initialize());
29
m_timingMoment
=
m_jetContainer
+
"."
+
m_timingMoment
.key();
30
ATH_CHECK
(
m_timingMoment
.initialize());
31
}
32
33
if
(
m_wp
!=
"Custom"
) {
34
auto
itr = workingPoints.find(
m_wp
);
35
if
(itr == workingPoints.end()) {
36
ATH_MSG_ERROR
(
"Invalid fJvt working point name"
);
37
return
StatusCode::FAILURE;
38
}
39
m_jvtCut
= itr->second;
40
}
41
42
return
StatusCode::SUCCESS;
43
}
44
45
bool
FJvtSelectionTool::select
(
const
xAOD::IParticle
*
jet
)
const
{
46
// select jet if it passes fJvt requirement and timing cut (if configured)
47
return
m_jvtAcc
(*
jet
) <=
m_jvtCut
&& (
m_timingCut
> 0 ? std::abs(
m_timingAcc
(*
jet
) ) <=
m_timingCut
: true );
48
}
49
50
}
// namespace CP
CP::FJvtSelectionTool::m_timingMoment
SG::ReadDecorHandleKey< xAOD::JetContainer > m_timingMoment
Definition:
FJvtSelectionTool.h:31
CP::FJvtSelectionTool::m_jvtMoment
SG::ReadDecorHandleKey< xAOD::JetContainer > m_jvtMoment
Definition:
FJvtSelectionTool.h:29
CP::JvtSelectionToolBase::m_minEta
Gaudi::Property< float > m_minEta
Definition:
JvtSelectionToolBase.h:31
CP::FJvtSelectionTool::select
virtual bool select(const xAOD::IParticle *jet) const override
Definition:
FJvtSelectionTool.cxx:45
SG::ConstAccessor< float >
FJvtSelectionTool.h
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition:
Event/xAOD/xAODBase/xAODBase/IParticle.h:41
CP
Select isolated Photons, Electrons and Muons.
Definition:
Control/xAODRootAccess/xAODRootAccess/TEvent.h:49
CP::FJvtSelectionTool::m_timingAcc
SG::ConstAccessor< float > m_timingAcc
Definition:
FJvtSelectionTool.h:42
CP::FJvtSelectionTool::m_jetContainer
Gaudi::Property< std::string > m_jetContainer
Definition:
FJvtSelectionTool.h:22
CP::FJvtSelectionTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition:
FJvtSelectionTool.cxx:15
CP::JvtSelectionToolBase
Definition:
JvtSelectionToolBase.h:15
jet
Definition:
JetCalibTools_PlotJESFactors.cxx:23
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition:
AthMsgStreamMacros.h:33
CP::FJvtSelectionTool::m_jvtCut
Gaudi::Property< float > m_jvtCut
Definition:
FJvtSelectionTool.h:28
CP::FJvtSelectionTool::m_jvtAcc
SG::ConstAccessor< float > m_jvtAcc
Definition:
FJvtSelectionTool.h:41
CP::JvtSelectionToolBase::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition:
JvtSelectionToolBase.cxx:9
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::FJvtSelectionTool::FJvtSelectionTool
FJvtSelectionTool(const std::string &name)
Definition:
FJvtSelectionTool.cxx:10
ATH_CHECK
#define ATH_CHECK
Definition:
AthCheckMacros.h:40
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition:
AthMsgStreamMacros.h:32
CP::FJvtSelectionTool::m_wp
Gaudi::Property< std::string > m_wp
Definition:
FJvtSelectionTool.h:25
ReadDecorHandle.h
Handle class for reading a decoration on an object.
CP::FJvtSelectionTool::m_timingCut
Gaudi::Property< float > m_timingCut
Definition:
FJvtSelectionTool.h:33
CP::JvtSelectionToolBase::m_maxEta
Gaudi::Property< float > m_maxEta
Definition:
JvtSelectionToolBase.h:33
Generated on Wed Mar 26 2025 21:10:48 for ATLAS Offline Software by
1.8.18