ATLAS Offline Software
MuonIsolationAlg.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
8 
9 //
10 // includes
11 //
12 
14 
15 #include <RootCoreUtils/Assert.h>
16 
17 //
18 // method implementations
19 //
20 
21 namespace CP
22 {
23 
25  initialize ()
26  {
27 
28  ANA_CHECK (m_isolationTool.retrieve());
33 
34  if (!m_nameSvc.empty())
35  {
36  ANA_CHECK (m_nameSvc.retrieve());
38  m_isolationTool->getMuonAcceptInfo()));
39  }
40 
41  asg::AcceptData blankAccept {&m_isolationTool->getObjAcceptInfo()};
42  m_setOnFail = selectionFromAccept(blankAccept);
43 
44  return StatusCode::SUCCESS;
45  }
46 
47 
48 
50  execute ()
51  {
52  for (const auto& sys : m_systematicsList.systematicsVector())
53  {
54  const xAOD::MuonContainer *muons = nullptr;
56  for (const xAOD::Muon *muon : *muons)
57  {
59  {
62  } else {
64  }
65  }
66  }
67  return StatusCode::SUCCESS;
68  }
69 }
xAOD::muon
@ muon
Definition: TrackingPrimitives.h:195
CP::SysWriteSelectionHandle::setBits
void setBits(const SG::AuxElement &element, SelectionType selection, const CP::SystematicSet &sys) const
set the selection decoration
CP::MuonIsolationAlg::m_preselection
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Definition: MuonIsolationAlg.h:50
CP::MuonIsolationAlg::m_muonHandle
SysReadHandle< xAOD::MuonContainer > m_muonHandle
the muon collection we run on
Definition: MuonIsolationAlg.h:45
MuonIsolationAlg.h
CP::selectionFromAccept
SelectionType selectionFromAccept(const asg::AcceptData &accept)
the selection decoration made from the given AcceptData object
Definition: SelectionHelpers.cxx:32
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::MuonIsolationAlg::initialize
StatusCode initialize() override
Definition: MuonIsolationAlg.cxx:25
Assert.h
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
CP::MuonIsolationAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: MuonIsolationAlg.h:41
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
CP::SysWriteSelectionHandle::getLabel
std::string getLabel() const
get the name/label of the decoration
Definition: SysWriteSelectionHandle.cxx:76
CP::SysReadHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle)
initialize this handle
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::MuonIsolationAlg::m_nameSvc
ServiceHandle< ISelectionNameSvc > m_nameSvc
the ISelectionNameSvc
Definition: MuonIsolationAlg.h:60
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
CP::MuonIsolationAlg::m_isolationHandle
SysWriteSelectionHandle m_isolationHandle
the decoration for the muon isolation
Definition: MuonIsolationAlg.h:55
CP::MuonIsolationAlg::m_isolationTool
ToolHandle< IIsolationSelectionTool > m_isolationTool
the smearing tool
Definition: MuonIsolationAlg.h:37
CP::MuonIsolationAlg::execute
StatusCode execute() override
Definition: MuonIsolationAlg.cxx:50
CP::SysReadSelectionHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize the accessor
Definition: SysReadSelectionHandle.cxx:34
CP::MuonIsolationAlg::m_setOnFail
SelectionType m_setOnFail
the bits to set for an object failing the preselection
Definition: MuonIsolationAlg.h:64
CP::SysReadHandle::getNamePattern
virtual std::string getNamePattern() const override
get the name pattern before substitution
asg::AcceptData
Definition: AcceptData.h:30
SG::AllowEmpty
@ AllowEmpty
Definition: StoreGate/StoreGate/VarHandleKey.h:30
CP::SysWriteSelectionHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize the accessor
Definition: SysWriteSelectionHandle.cxx:34