ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Algorithms
AsgAnalysisAlgorithms
AsgAnalysisAlgorithms
AsgShallowCopyAlg.h
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
8
#ifndef ASG_ANALYSIS_ALGORITHMS__ASG_SHALLOW_COPY_ALG_H
9
#define ASG_ANALYSIS_ALGORITHMS__ASG_SHALLOW_COPY_ALG_H
10
11
#include <
AnaAlgorithm/AnaAlgorithm.h
>
12
#include <
xAODBase/IParticleContainer.h
>
13
#include <
SystematicsHandles/SysReadHandle.h
>
14
#include <
SystematicsHandles/SysWriteHandle.h
>
15
#include <
SystematicsHandles/SysListHandle.h
>
16
17
18
namespace
CP
19
{
26
27
class
AsgShallowCopyAlg
final :
public
EL::AnaAlgorithm
28
{
30
public
:
31
AsgShallowCopyAlg
(
const
std::string&
name
,
32
ISvcLocator* pSvcLocator);
33
34
35
public
:
36
StatusCode
initialize
()
override
;
37
38
public
:
39
StatusCode
execute
(
const
EventContext& ctx)
override
;
40
41
43
private
:
44
SysListHandle
m_systematicsList
{
this
};
45
47
private
:
48
SysReadHandle<xAOD::IParticleContainer>
m_inputHandle
{
49
this
,
"input"
,
""
,
"the input collection to run on"
};
50
52
private
:
53
SysWriteHandle<xAOD::IParticleContainer>
m_outputHandle
{
54
this
,
"output"
,
""
,
"the output view container to produce"
};
55
57
private
:
58
Gaudi::Property<std::vector<std::string>>
m_declareDecorations
{
59
this
,
"declareDecorations"
, {},
"the list of decorations to declare (only needed in AthenaMT)"
};
60
62
private
:
63
template
<
typename
Type> StatusCode
64
executeTemplate
(
const
EventContext& ctx,
const
CP::SystematicSet
& sys);
65
67
private
:
68
StatusCode
executeFindType
(
const
EventContext& ctx,
const
CP::SystematicSet
& sys);
69
70
private
:
71
StatusCode (
AsgShallowCopyAlg
::*
m_function
) (
const
EventContext& ctx,
const
CP::SystematicSet
& sys) {&
AsgShallowCopyAlg::executeFindType
};
72
};
73
}
74
75
#endif
AnaAlgorithm.h
SysListHandle.h
SysReadHandle.h
SysWriteHandle.h
CP::AsgShallowCopyAlg::m_function
StatusCode(AsgShallowCopyAlg::* m_function)(const EventContext &ctx, const CP::SystematicSet &sys)
Definition
AsgShallowCopyAlg.h:71
CP::AsgShallowCopyAlg::executeTemplate
StatusCode executeTemplate(const EventContext &ctx, const CP::SystematicSet &sys)
the templated version of execute for a single systematic
Definition
AsgShallowCopyAlg.cxx:27
CP::AsgShallowCopyAlg::initialize
StatusCode initialize() override
Definition
AsgShallowCopyAlg.cxx:121
CP::AsgShallowCopyAlg::m_outputHandle
SysWriteHandle< xAOD::IParticleContainer > m_outputHandle
the output view container we produce
Definition
AsgShallowCopyAlg.h:53
CP::AsgShallowCopyAlg::executeFindType
StatusCode executeFindType(const EventContext &ctx, const CP::SystematicSet &sys)
the version of execute to find the type
Definition
AsgShallowCopyAlg.cxx:43
CP::AsgShallowCopyAlg::AsgShallowCopyAlg
AsgShallowCopyAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
Definition
AsgShallowCopyAlg.cxx:112
CP::AsgShallowCopyAlg::m_declareDecorations
Gaudi::Property< std::vector< std::string > > m_declareDecorations
an (optional) list of decorations to copy
Definition
AsgShallowCopyAlg.h:58
CP::AsgShallowCopyAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition
AsgShallowCopyAlg.h:44
CP::AsgShallowCopyAlg::m_inputHandle
SysReadHandle< xAOD::IParticleContainer > m_inputHandle
the input collection we run on
Definition
AsgShallowCopyAlg.h:48
CP::SysListHandle
a class managing the property to configure the list of systematics to process
Definition
SysListHandle.h:33
CP::SysReadHandle
a data handle for reading systematics varied input data
Definition
SysReadHandle.h:33
CP::SysWriteHandle
a data handle for writing systematics varied input data
Definition
SysWriteHandle.h:34
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition
SystematicSet.h:31
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition
AnaAlgorithm.h:74
EL::AnaAlgorithm::execute
virtual::StatusCode execute()
execute this algorithm
Definition
AnaAlgorithm.cxx:315
CP
Select isolated Photons, Electrons and Muons.
Definition
Control/xAODRootAccess/xAODRootAccess/TEvent.h:27
xAOD::name
name
Definition
TriggerMenuJson_v1.cxx:29
IParticleContainer.h
Generated on
for ATLAS Offline Software by
1.17.0