The Gaudi Framework
master (53dee381)
Toggle main menu visibility
Loading...
Searching...
No Matches
IDataBroker.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
#include <
GaudiKernel/DataObjID.h
>
14
#include <
GaudiKernel/IInterface.h
>
15
#include <
GaudiKernel/TypeNameString.h
>
16
#include <string>
17
#include <vector>
18
19
namespace
Gaudi
{
20
class
Algorithm
;
21
}
22
37
struct
GAUDI_API
IDataBroker
:
extend_interfaces
<IInterface> {
39
DeclareInterfaceID
(
IDataBroker
, 1, 0 );
40
42
virtual
std::vector<Gaudi::Algorithm*>
43
algorithmsRequiredFor
(
const
DataObjIDColl
& requested,
const
std::vector<std::string>& stoppers = {} )
const
= 0;
44
47
virtual
std::vector<Gaudi::Algorithm*>
48
algorithmsRequiredFor
(
const
Gaudi::Utils::TypeNameString
& alg,
49
const
std::vector<std::string>& stoppers = {} )
const
= 0;
50
};
DataObjID.h
DataObjIDColl
std::unordered_set< DataObjID, DataObjID_Hasher > DataObjIDColl
Definition
DataObjID.h:121
IInterface.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
TypeNameString.h
Gaudi::Algorithm
Base class from which all concrete algorithm classes should be derived.
Definition
Algorithm.h:87
Gaudi::Utils::TypeNameString
Helper class to parse a string of format "type/name".
Definition
TypeNameString.h:19
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition
__init__.py:1
IDataBroker
Definition
IDataBroker.h:37
IDataBroker::algorithmsRequiredFor
virtual std::vector< Gaudi::Algorithm * > algorithmsRequiredFor(const Gaudi::Utils::TypeNameString &alg, const std::vector< std::string > &stoppers={}) const =0
Get the (ordered!) list of algorithms required to succesfully execute (as far as data dependencies go...
IDataBroker::algorithmsRequiredFor
virtual std::vector< Gaudi::Algorithm * > algorithmsRequiredFor(const DataObjIDColl &requested, const std::vector< std::string > &stoppers={}) const =0
Get the (ordered!) list of algorithms required to provide a given DataObjIDColl.
IDataBroker::DeclareInterfaceID
DeclareInterfaceID(IDataBroker, 1, 0)
InterfaceID.
extend_interfaces
Base class to be used to extend an interface.
Definition
extend_interfaces.h:23
GaudiKernel
include
GaudiKernel
IDataBroker.h
Generated on
for The Gaudi Framework by
1.17.0