ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
D3PDTools
AnaAlgorithm
Root
AnaReentrantAlgorithm.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
9
//
10
// includes
11
//
12
13
#include <
AnaAlgorithm/AnaReentrantAlgorithm.h
>
14
15
#include <
AsgMessaging/MessageCheck.h
>
16
#include <stdexcept>
17
18
#ifdef XAOD_STANDALONE
19
#include <
AnaAlgorithm/IFilterWorker.h
>
20
#endif
21
22
//
23
// method implementations
24
//
25
26
namespace
EL
27
{
28
AnaReentrantAlgorithm ::
29
AnaReentrantAlgorithm (
const
std::string& name,
30
[[maybe_unused]] ISvcLocator *pSvcLocator)
31
#ifdef XAOD_STANDALONE
32
: AsgComponent (name)
33
#else
34
:
AthReentrantAlgorithm
(name, pSvcLocator)
35
#endif
36
{
37
ANA_MSG_DEBUG
(
"AnaReentrantAlgorithm: "
<< name);
38
}
39
40
41
42
#ifdef XAOD_STANDALONE
43
bool
AnaReentrantAlgorithm ::
44
filterPassed()
const
45
{
46
return
filterWorker()->
filterPassed
();
47
}
48
49
50
51
void
AnaReentrantAlgorithm ::
52
setFilterPassed (
bool
val_filterPassed)
53
{
54
filterWorker()->setFilterPassed (val_filterPassed);
55
}
56
57
58
59
IFilterWorker
*AnaReentrantAlgorithm ::
60
filterWorker ()
const
61
{
62
if
(!m_filterWorker)
63
throw
std::logic_error (
"no filter worker set on algorithm "
+
name
());
64
return
m_filterWorker;
65
}
66
67
68
69
IWorker *AnaReentrantAlgorithm ::
70
wk ()
const
71
{
72
if
(!m_wk)
73
throw
std::logic_error (
"no worker set on algorithm "
+ name());
74
return
m_wk;
75
}
76
#endif
77
78
79
80
::StatusCode
AnaReentrantAlgorithm ::
81
initialize ()
82
{
83
return
StatusCode::SUCCESS;
84
}
85
86
87
88
::StatusCode
AnaReentrantAlgorithm ::
89
execute (
const
EventContext&
/*ctx*/
)
const
90
{
91
return
StatusCode::SUCCESS;
92
}
93
94
95
96
::StatusCode
AnaReentrantAlgorithm ::
97
finalize ()
98
{
99
return
StatusCode::SUCCESS;
100
}
101
102
103
104
#ifdef XAOD_STANDALONE
105
::StatusCode
AnaReentrantAlgorithm ::
106
sysInitialize ()
107
{
108
return
initialize
();
109
}
110
111
112
113
::StatusCode
AnaReentrantAlgorithm ::
114
sysExecute (
const
EventContext& ctx)
115
{
116
return
execute (ctx);
117
}
118
119
120
121
::StatusCode
AnaReentrantAlgorithm ::
122
sysFinalize ()
123
{
124
return
finalize
();
125
}
126
127
128
129
asg::SgEvent *AnaReentrantAlgorithm ::
130
evtStore ()
const
131
{
132
if
(!m_evtStore)
133
throw
std::logic_error (
"no evtStore set on algorithm "
+
name
());
134
return
m_evtStore;
135
}
136
137
138
139
void
AnaReentrantAlgorithm ::
140
setEvtStore (asg::SgEvent *val_evtStore)
141
{
142
if
(m_evtStore)
143
throw
std::logic_error (
"set evtStore twice on algorithm "
+
name
());
144
m_evtStore = val_evtStore;
145
}
146
147
148
149
void
AnaReentrantAlgorithm ::
150
setFilterWorker (IFilterWorker *val_filterWorker)
151
{
152
if
(m_filterWorker)
153
throw
std::logic_error (
"set filter worker twice on algorithm "
+
name
());
154
m_filterWorker = val_filterWorker;
155
}
156
157
158
159
void
AnaReentrantAlgorithm ::
160
setWk (IWorker *val_wk)
161
{
162
if
(m_wk)
163
throw
std::logic_error (
"set wk twice on algorithm "
+
name
());
164
m_wk = val_wk;
165
}
166
#endif
167
}
AnaReentrantAlgorithm.h
MessageCheck.h
macros for messaging and checking status codes
ANA_MSG_DEBUG
#define ANA_MSG_DEBUG(xmsg)
Macro printing debug messages.
Definition
Control/AthToolSupport/AsgMessaging/AsgMessaging/MessageCheck.h:288
IFilterWorker.h
AthCommonAlgorithm::filterPassed
virtual bool filterPassed(const EventContext &ctx) const
Get filter decision:
Definition
AthCommonAlgorithm.h:93
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
EL::IFilterWorker
the interface to the filter functions in the algorithm sequence
Definition
IFilterWorker.h:27
EL
This module defines the arguments passed from the BATCH driver to the BATCH worker.
Definition
AsgComponentFactories.h:16
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
extractSporadic.name
name
Definition
extractSporadic.py:101
python.tests.PyTestsLib.finalize
finalize(self)
_info( "content of StoreGate..." ) self.sg.dump()
Definition
PyTestsLib.py:50
xAOD::name
name
Definition
TriggerMenuJson_v1.cxx:29
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0