ATLAS Offline Software
JetSelectionAlg.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
8 //
9 // includes
10 //
11 
13 
15 
16 //
17 // method implementations
18 //
19 
20 namespace CP
21 {
22 
24  initialize ()
25  {
26  ANA_CHECK (m_selectionTool.retrieve());
31 
32  return StatusCode::SUCCESS;
33  }
34 
35 
36 
38  execute ()
39  {
40  for (const auto& sys : m_systematicsList.systematicsVector())
41  {
42  const xAOD::JetContainer *jets = nullptr;
44  for (const xAOD::Jet *jet : *jets)
45  {
46  if (m_preselection.getBool (*jet, sys))
47  {
49  (*jet, m_selectionTool->keep(*jet), sys);
50  }
51  }
52  }
53 
54  return StatusCode::SUCCESS;
55  }
56 }
CP::JetSelectionAlg::execute
StatusCode execute() override
Definition: JetSelectionAlg.cxx:38
CP::JetSelectionAlg::m_selectionHandle
SysWriteSelectionHandle m_selectionHandle
the decoration for the jet selection
Definition: JetSelectionAlg.h:53
CP::JetSelectionAlg::initialize
StatusCode initialize() override
Definition: JetSelectionAlg.cxx:24
CP::JetSelectionAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: JetSelectionAlg.h:39
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
JetSelectionAlg.h
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
CP::SysWriteSelectionHandle::setBool
void setBool(const SG::AuxElement &element, bool selection, const CP::SystematicSet &sys) const
set the selection decoration
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
CP::JetSelectionAlg::m_preselection
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Definition: JetSelectionAlg.h:48
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::JetSelectionAlg::m_selectionTool
ToolHandle< IJetSelector > m_selectionTool
the selection tool
Definition: JetSelectionAlg.h:35
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
CP::JetSelectionAlg::m_jetHandle
SysReadHandle< xAOD::JetContainer > m_jetHandle
the jet collection we run on
Definition: JetSelectionAlg.h:43
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
CP::SysReadSelectionHandle::initialize
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize the accessor
Definition: SysReadSelectionHandle.cxx:34
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
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
SelectionHelpers.h