The Gaudi Framework  master (1304469f)
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
16#include <string>
17#include <vector>
18
19namespace Gaudi {
20 class Algorithm;
21}
22
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*>
49 const std::vector<std::string>& stoppers = {} ) const = 0;
50};
std::unordered_set< DataObjID, DataObjID_Hasher > DataObjIDColl
Definition DataObjID.h:121
#define GAUDI_API
Definition Kernel.h:49
Base class from which all concrete algorithm classes should be derived.
Definition Algorithm.h:87
Helper class to parse a string of format "type/name".
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition __init__.py:1
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...
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.
DeclareInterfaceID(IDataBroker, 1, 0)
InterfaceID.
Base class to be used to extend an interface.