|
ATLAS Offline Software
|
Go to the documentation of this file.
12 #ifndef GAUDISEQUENCER_ATHSEQUENCER_H
13 #define GAUDISEQUENCER_ATHSEQUENCER_H
19 #include "Gaudi/Property.h"
20 #include "Gaudi/Sequence.h"
21 #include "GaudiKernel/ServiceHandle.h"
22 #include "GaudiKernel/IClassIDSvc.h"
112 const std::string&
type,
113 const std::string&
name,
114 Gaudi::Algorithm*& pAlgorithm
141 std::vector<Gaudi::Algorithm*>* theAlgs );
153 const std::string&
type,
154 const std::string&
name,
155 Gaudi::Algorithm*& pAlgorithm,
156 std::vector<Gaudi::Algorithm*>* theAlgs
163 std::vector<Gaudi::Algorithm*>* theAlgs );
178 Gaudi::Property<std::vector<std::string>>
m_names{
this,
"Members",{},
179 "Algorithm names (of the form '<cppType>/<instanceName>')",
"SubAlgorithm"};
181 Gaudi::Property<bool>
m_modeOR{
this,
"ModeOR",
false,
182 "Use OR logic instead of AND"};
185 "Always continue sequence ignoring filterPassed of member algorithms"};
188 "Continue even if algorithm filter fails"};
191 "Concurrent or (strict) Sequential ordering of algorithms"};
194 "Abort job after one algorithm or sequence reaches the time out. Timeout given in Nanoseconds "
195 "(official ATLAS units), despite its millisecond resolution"};
198 "Pass these extra output data IDs, which are not declared by any of the algorithms or tools, to dynamic data consumers."};
201 "Run the post initialization step, to dynamically create and gather extra data dependencies. "
202 "Should be enabled for the top most sequence."};
210 #endif //GAUDISEQUENCER_ATHSEQUENCER_H
StatusCode append(Gaudi::Algorithm *pAlgorithm)
Append an algorithm to the sequencer.
virtual ~AthSequencer()
Destructor.
AthSequencer(const std::string &name, ISvcLocator *svcloc)
Constructor(s)
ServiceHandle< IClassIDSvc > m_clidSvc
Templated class that provides backwards compatibility for legacy MsgService manipulation methods.
StatusCode decodeMemberNames()
Decode Member Name list.
const unsigned int m_maxPass
virtual StatusCode initialize() override
Initialization of a sequencer.
Gaudi::Property< bool > m_modeOR
Gaudi::Property< bool > m_runPostInitialize
Gaudi::Property< bool > m_sequential
Gaudi::Property< std::vector< std::string > > m_undeclaredOutputData
::StatusCode StatusCode
StatusCode definition for legacy code.
Templated class that provides access to Athena event stores and ability to set data dependencies via ...
Gaudi::Property< bool > m_ignoreFilter
virtual void resetExecuted(const EventContext &ctx) const
Reset the AthSequencer executed state for the current event.
virtual StatusCode execute(const EventContext &ctx) const override
The actions to be performed by the sequencer on an event.
void membershipHandler(Gaudi::Details::PropertyBase &theProp)
"Members" property handler
virtual bool isStopOverride() const
Has the StopOverride mode been set?
StatusCode remove(Gaudi::Algorithm *pAlgorithm)
Remove the specified algorithm from the sequencer.
Gaudi::Property< std::vector< std::string > > m_names
virtual StatusCode start() override
Start (from INITIALIZED to RUNNING).
StatusCode executeAlgorithm(Gaudi::Algorithm *theAlgorithm, const EventContext &ctx) const
Run one algorithm.
StatusCode createAndAppend(const std::string &type, const std::string &name, Gaudi::Algorithm *&pAlgorithm)
Create a algorithm and append it to the sequencer.
StatusCode decodeNames(Gaudi::Property< std::vector< std::string >> &theNames, std::vector< Gaudi::Algorithm * > *theAlgs)
Decode algorithm names, creating or appending algorithms as appropriate.
unsigned int m_timeoutMilliseconds
timeout converted to ms
virtual StatusCode reinitialize() override
AthSequencer Reinitialization.
void branchMembershipHandler(Gaudi::Details::PropertyBase &theProp)
"BranchMembers" propertry handler
Gaudi::Property< bool > m_stopOverride
StatusCode decodeBranchMemberNames()
Decode branch member naem list.
Gaudi::Property< double > m_timeout
virtual StatusCode stop() override
Stop (from RUNNING to INITIALIZED).