ATLAS Offline Software
Loading...
Searching...
No Matches
AthAlgorithmDHUpdate.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2/*
3 * Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration.
4 */
5// $Id$
12
13
14#ifndef ATHENABASECOMPS_ATHALGORITHMDHUPDATE_H
15#define ATHENABASECOMPS_ATHALGORITHMDHUPDATE_H
16
17
18#include "GaudiKernel/IDataHandleHolder.h"
19#include "GaudiKernel/DataObjID.h"
20#include "GaudiKernel/ClassID.h"
21#include <memory>
22
23
24namespace AthenaBaseComps {
25
26
41 : public IDataHandleVisitor
42{
43public:
49 AthAlgorithmDHUpdate (DataObjIDColl& linkedObjs,
50 std::unique_ptr<IDataHandleVisitor> chain);
51
52
60 virtual void visit(const IDataHandleHolder* dhh) override;
61
62
63private:
71 void handle (CLID clid, const std::string& key);
72
73
75 DataObjIDColl& m_linkedObjs;
76
78 std::unique_ptr<IDataHandleVisitor> m_chain;
79};
80
81
82} // namespace AthenaBaseComps
83
84
85#endif // not ATHENABASECOMPS_ATHALGORITHMDHUPDATE_H
uint32_t CLID
The Class ID type.
AthAlgorithmDHUpdate(DataObjIDColl &linkedObjs, std::unique_ptr< IDataHandleVisitor > chain)
Constructor.
DataObjIDColl & m_linkedObjs
Set of additional output dependencies represented by links.
void handle(CLID clid, const std::string &key)
Handle one output dependency.
virtual void visit(const IDataHandleHolder *dhh) override
Walk over the dependencies of an algorithm.
std::unique_ptr< IDataHandleVisitor > m_chain
Hook to call after this one.