The Gaudi Framework
v30r3 (a5ef0a68)
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
IDataHandleHolder.h
Go to the documentation of this file.
1
#ifndef GAUDIKERNEL_IDATAHANDLEHOLDER
2
#define GAUDIKERNEL_IDATAHANDLEHOLDER 1
3
4
#include "
GaudiKernel/DataHandle.h
"
5
#include "
GaudiKernel/DataObjID.h
"
6
#include "
GaudiKernel/IInterface.h
"
7
#include "
GaudiKernel/INamedInterface.h
"
8
9
#include <set>
10
#include <vector>
11
12
class
IDataHandleVisitor
;
13
14
class
GAUDI_API
IDataHandleHolder
:
virtual
public
INamedInterface
15
{
16
public
:
17
virtual
std::vector<Gaudi::DataHandle*>
inputHandles()
const
= 0;
18
virtual
std::vector<Gaudi::DataHandle*>
outputHandles()
const
= 0;
19
20
virtual
const
DataObjIDColl
& extraInputDeps()
const
= 0;
21
virtual
const
DataObjIDColl
& extraOutputDeps()
const
= 0;
22
23
virtual
void
acceptDHVisitor(
IDataHandleVisitor
* )
const
= 0;
24
25
virtual
const
DataObjIDColl
& inputDataObjs()
const
= 0;
26
virtual
const
DataObjIDColl
& outputDataObjs()
const
= 0;
27
28
virtual
void
addDependency(
const
DataObjID
&,
const
Gaudi::DataHandle::Mode
& ) = 0;
29
30
DeclareInterfaceID
(
IDataHandleHolder
, 1, 0 );
31
32
virtual
void
declare(
Gaudi::DataHandle
& ) = 0;
33
virtual
void
renounce(
Gaudi::DataHandle
& ) = 0;
34
};
35
36
class
IDataHandleVisitor
37
{
38
public
:
39
virtual
~
IDataHandleVisitor
() =
default
;
40
virtual
void
visit(
const
IDataHandleHolder
* ) = 0;
41
};
42
43
#endif // !GAUDIKERNEL_IDATAHANDLEHOLDER
DataObjID
Definition:
DataObjID.h:37
INamedInterface::DeclareInterfaceID
DeclareInterfaceID(INamedInterface, 1, 0)
InterfaceID.
INamedInterface.h
IDataHandleHolder
Definition:
IDataHandleHolder.h:14
Gaudi::DataHandle
Definition:
DataHandle.h:28
std::unordered_set< DataObjID, DataObjID_Hasher >
DataObjID.h
IDataHandleVisitor
Definition:
IDataHandleHolder.h:36
INamedInterface
IInterface compliant class extending IInterface with the name() method.
Definition:
INamedInterface.h:15
std::vector
STL class.
Gaudi::DataHandle::Mode
Mode
Definition:
DataHandle.h:31
DataHandle.h
GAUDI_API
#define GAUDI_API
Definition:
Kernel.h:104
IInterface.h
GaudiKernel
GaudiKernel
IDataHandleHolder.h
Generated on Wed Aug 1 2018 23:21:03 for The Gaudi Framework by
1.8.11