ATLAS Offline Software
|
Update output dependencies to include symlinks. More...
#include <AthAlgorithmDHUpdate.h>
Public Member Functions | |
AthAlgorithmDHUpdate (DataObjIDColl &linkedObjs, std::unique_ptr< IDataHandleVisitor > chain) | |
Constructor. More... | |
virtual void | visit (const IDataHandleHolder *dhh) override |
Walk over the dependencies of an algorithm. More... | |
Private Member Functions | |
void | handle (CLID clid, const std::string &key) |
Handle one output dependency. More... | |
Private Attributes | |
DataObjIDColl & | m_linkedObjs |
Set of additional output dependencies represented by links. More... | |
std::unique_ptr< IDataHandleVisitor > | m_chain |
Hook to call after this one. More... | |
Update output dependencies to include symlinks.
This is intended to be installed in an algorithm via the m_updateDataHandles hook, to run before Algorithm::sysInitialize merges the sets of input and output dependencies.
It makes a first pass over all the output dependences. For each, it examines the CLID to see if there are any other CLIDs to which it is convertable, and if so, adds them to the linkedObjs
list. The intention is that the algorithm will then override extraOutputDeps
so that it will include these extra entries.
Definition at line 40 of file AthAlgorithmDHUpdate.h.
AthenaBaseComps::AthAlgorithmDHUpdate::AthAlgorithmDHUpdate | ( | DataObjIDColl & | linkedObjs, |
std::unique_ptr< IDataHandleVisitor > | chain | ||
) |
Constructor.
linkedObjs | Set to which entries for symlinks will be added. |
chain | Hook to call after this one completes. |
Definition at line 25 of file AthAlgorithmDHUpdate.cxx.
Handle one output dependency.
clid | The CLID of the output. |
key | The SG key of the output. |
If CLID has symlinks available, enter these links in linkedObjs
.
Definition at line 81 of file AthAlgorithmDHUpdate.cxx.
|
overridevirtual |
Walk over the dependencies of an algorithm.
dhh | The algorithm object. |
Finds output dependencies of the algorithms that have symlinks available and enters these links in linkedObjs
.
Definition at line 40 of file AthAlgorithmDHUpdate.cxx.
|
private |
Hook to call after this one.
Definition at line 78 of file AthAlgorithmDHUpdate.h.
|
private |
Set of additional output dependencies represented by links.
Definition at line 75 of file AthAlgorithmDHUpdate.h.