Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
XbbEfficiencyAlg.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
9 
10 namespace CP
11 {
13  {
15  {
16  ANA_MSG_ERROR ("no scale factor decoration name set");
17  return StatusCode::FAILURE;
18  }
19 
20  ANA_CHECK (m_efficiencyTool.retrieve());
26 
27  return StatusCode::SUCCESS;
28  }
29 
31  {
32  for (const auto& sys : m_systematicsList.systematicsVector())
33  {
34  const xAOD::JetContainer *jets = nullptr;
36 
37  for (const xAOD::Jet *jet : *jets)
38  {
39  float sf = 0.;
40  if (m_preselection.getBool (*jet, sys))
41  {
42  (void)m_efficiencyTool->getScaleFactor (*jet, sf, sys);
43  }
45  }
46  }
47  return StatusCode::SUCCESS;
48  }
49 }
CP::SysWriteDecorHandle::set
void set(const SG::AuxElement &object, const T &value, const CP::SystematicSet &sys) const
set the object decoration for the given systematic
XbbEfficiencyAlg.h
CP::XbbEfficiencyAlg::m_preselection
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Definition: XbbEfficiencyAlg.h:45
CP::XbbEfficiencyAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: XbbEfficiencyAlg.h:36
defineDB.jets
jets
Definition: JetTagCalibration/share/defineDB.py:24
CP::SysListHandle::addSystematics
StatusCode addSystematics(const CP::SystematicSet &recommended, const CP::SystematicSet &affecting)
register a set of affecting variables for the current algorithm (usually obtained from an CP::ISystem...
Definition: SysListHandle.cxx:48
ANA_MSG_ERROR
#define ANA_MSG_ERROR(xmsg)
Macro printing error messages.
Definition: Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:294
ANA_CHECK
#define ANA_CHECK(EXP)
check whether the given expression was successful
Definition: Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:324
CP::SysReadHandle::retrieve
::StatusCode retrieve(const T *&object, const CP::SystematicSet &sys) const
retrieve the object for the given name
CP::SysListHandle::systematicsVector
const std::vector< CP::SystematicSet > & systematicsVector() const
the list of systematics to loop over
Definition: SysListHandle.cxx:96
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:49
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
CP::SysReadHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle)
initialize this handle
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
CP::SysListHandle::initialize
::StatusCode initialize()
intialize this property
Definition: SysListHandle.cxx:69
CP::SysReadSelectionHandle::getBool
bool getBool(const SG::AuxElement &element, const CP::SystematicSet &sys) const
get the selection as a bool
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::XbbEfficiencyAlg::m_scaleFactorDecoration
SysWriteDecorHandle< float > m_scaleFactorDecoration
the decoration for the Xbb SF
Definition: XbbEfficiencyAlg.h:50
CP::SysWriteDecorHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize this handle
CP::XbbEfficiencyAlg::m_jetHandle
SysReadHandle< xAOD::JetContainer > m_jetHandle
the jet collection we run on
Definition: XbbEfficiencyAlg.h:40
CP::XbbEfficiencyAlg::m_efficiencyTool
ToolHandle< IBTaggingEfficiencyJsonTool > m_efficiencyTool
the efficiency json tool
Definition: XbbEfficiencyAlg.h:33
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
CP::SysWriteDecorHandle::empty
virtual bool empty() const noexcept override
whether we have a name configured
CP::XbbEfficiencyAlg::initialize
virtual StatusCode initialize() override
Definition: XbbEfficiencyAlg.cxx:12
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
CP::SysReadSelectionHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize the accessor
Definition: SysReadSelectionHandle.cxx:34
SG::AllowEmpty
@ AllowEmpty
Definition: StoreGate/StoreGate/VarHandleKey.h:30
CP::XbbEfficiencyAlg::execute
virtual StatusCode execute() override
Definition: XbbEfficiencyAlg.cxx:30