ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Algorithms
FTagAnalysisAlgorithms
Root
XbbEfficiencyAlg.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
8
#include <
FTagAnalysisAlgorithms/XbbEfficiencyAlg.h
>
9
10
namespace
CP
11
{
12
StatusCode XbbEfficiencyAlg :: initialize()
13
{
14
if
(
m_scaleFactorDecoration
.empty())
15
{
16
ANA_MSG_ERROR
(
"no scale factor decoration name set"
);
17
return
StatusCode::FAILURE;
18
}
19
20
ANA_CHECK
(
m_efficiencyTool
.retrieve());
21
ANA_CHECK
(
m_jetHandle
.initialize (
m_systematicsList
));
22
ANA_CHECK
(
m_preselection
.initialize (
m_systematicsList
,
m_jetHandle
,
SG::AllowEmpty
));
23
ANA_CHECK
(
m_scaleFactorDecoration
.initialize (
m_systematicsList
,
m_jetHandle
));
24
ANA_CHECK
(
m_systematicsList
.addSystematics (*
m_efficiencyTool
));
25
ANA_CHECK
(
m_systematicsList
.initialize());
26
ANA_CHECK
(
m_outOfValidity
.initialize());
27
28
return
StatusCode::SUCCESS;
29
}
30
31
StatusCode XbbEfficiencyAlg :: execute(
const
EventContext& ctx)
32
{
33
for
(
const
auto
& sys :
m_systematicsList
.systematicsVector())
34
{
35
const
xAOD::JetContainer
*jets =
nullptr
;
36
ANA_CHECK
(
m_jetHandle
.retrieve (jets, sys, ctx));
37
38
for
(
const
xAOD::Jet
*
jet
: *jets)
39
{
40
float
sf = 0.;
41
if
(
m_preselection
.getBool (*
jet
, sys))
42
{
43
ANA_CHECK_CORRECTION
(
m_outOfValidity
, *
jet
,
m_efficiencyTool
->getScaleFactor (*
jet
, sf, sys));
44
if
(!
m_outOfValidity
.get(*
jet
))
45
sf =
invalidScaleFactor
();
46
}
47
m_scaleFactorDecoration
.set (*
jet
, sf, sys);
48
}
49
}
50
return
StatusCode::SUCCESS;
51
}
52
}
ANA_MSG_ERROR
#define ANA_MSG_ERROR(xmsg,...)
Macro printing error messages.
Definition
Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:295
ANA_CHECK
#define ANA_CHECK(EXP)
check whether the given expression was successful
Definition
Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:325
ANA_CHECK_CORRECTION
#define ANA_CHECK_CORRECTION(helper, object, expr)
a helper check macro to work with OutOfValidityHelper
Definition
OutOfValidityHelper.h:131
XbbEfficiencyAlg.h
CP::XbbEfficiencyAlg::m_efficiencyTool
ToolHandle< IBTaggingEfficiencyJsonTool > m_efficiencyTool
the efficiency json tool
Definition
XbbEfficiencyAlg.h:33
CP::XbbEfficiencyAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition
XbbEfficiencyAlg.h:36
CP::XbbEfficiencyAlg::m_outOfValidity
OutOfValidityHelper m_outOfValidity
the helper for OutOfValidity results
Definition
XbbEfficiencyAlg.h:50
CP::XbbEfficiencyAlg::m_preselection
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Definition
XbbEfficiencyAlg.h:45
CP::XbbEfficiencyAlg::m_scaleFactorDecoration
SysWriteDecorHandle< float > m_scaleFactorDecoration
the decoration for the Xbb SF
Definition
XbbEfficiencyAlg.h:54
CP::XbbEfficiencyAlg::m_jetHandle
SysReadHandle< xAOD::JetContainer > m_jetHandle
the jet collection we run on
Definition
XbbEfficiencyAlg.h:40
CP
Select isolated Photons, Electrons and Muons.
Definition
Control/xAODRootAccess/xAODRootAccess/TEvent.h:27
CP::invalidScaleFactor
constexpr float invalidScaleFactor()
the decoration value to use if there is no valid scale factor decoration
Definition
SysWriteDecorHandle.h:31
SG::AllowEmpty
@ AllowEmpty
Definition
StoreGate/StoreGate/VarHandleKey.h:29
jet
Definition
JetCalibTools_PlotJESFactors.cxx:23
xAOD::Jet
Jet_v1 Jet
Definition of the current "jet version".
Definition
Event/xAOD/xAODJet/xAODJet/Jet.h:17
xAOD::JetContainer
JetContainer_v1 JetContainer
Definition of the current "jet container version".
Definition
JetContainer.h:17
Generated on
for ATLAS Offline Software by
1.17.0