Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework
master (d98a2936)
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
i
l
m
n
o
p
q
r
s
t
v
Enumerator
a
b
c
d
e
f
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Properties
Related Functions
:
a
b
c
d
e
g
h
i
m
o
p
r
s
t
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
b
c
e
f
g
h
i
l
m
o
p
r
s
t
u
z
Variables
a
b
c
d
e
g
h
i
m
o
p
q
r
s
t
v
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
Enumerations
Enumerator
Macros
_
a
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
IDataStoreAgent.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/Kernel.h
>
14
#include <functional>
15
16
class
IRegistry
;
17
24
class
GAUDI_API
IDataStoreAgent
{
25
public
:
27
virtual
~IDataStoreAgent
() =
default
;
28
32
virtual
bool
analyse
(
IRegistry
* pObject,
int
level
) = 0;
33
};
34
35
namespace
details
{
36
template
<
typename
F>
37
class
GenericDataStoreAgent
final :
public
IDataStoreAgent
{
38
F
f
;
39
40
public
:
41
template
<
typename
G>
42
GenericDataStoreAgent
( G&&
g
) :
f
{ std::forward<G>(
g
) } {}
43
44
bool
analyse
(
IRegistry
* pObj,
int
level
)
override
{
return
std::invoke(
f
, pObj,
level
); }
45
};
46
}
// namespace details
47
48
template
<
typename
F>
49
::details::GenericDataStoreAgent<F>
makeDataStoreAgent
( F&& f ) {
50
return
{ std::forward<F>( f ) };
51
}
details::GenericDataStoreAgent::GenericDataStoreAgent
GenericDataStoreAgent(G &&g)
Definition:
IDataStoreAgent.h:42
IDataStoreAgent::analyse
virtual bool analyse(IRegistry *pObject, int level)=0
Analyse the data object.
details::GenericDataStoreAgent::analyse
bool analyse(IRegistry *pObj, int level) override
Analyse the data object.
Definition:
IDataStoreAgent.h:44
details::GenericDataStoreAgent
Definition:
IDataStoreAgent.h:37
IRegistry
Definition:
IRegistry.h:29
details::GenericDataStoreAgent::f
F f
Definition:
IDataStoreAgent.h:38
details
Definition:
AnyDataWrapper.h:19
gaudirun.g
dictionary g
Definition:
gaudirun.py:582
gaudirun.level
level
Definition:
gaudirun.py:364
Kernel.h
IDataStoreAgent::~IDataStoreAgent
virtual ~IDataStoreAgent()=default
destructor
makeDataStoreAgent
::details::GenericDataStoreAgent< F > makeDataStoreAgent(F &&f)
Definition:
IDataStoreAgent.h:49
GAUDI_API
#define GAUDI_API
Definition:
Kernel.h:49
IDataStoreAgent
Definition:
IDataStoreAgent.h:24
GaudiKernel
include
GaudiKernel
IDataStoreAgent.h
Generated on Wed Aug 13 2025 09:05:04 for The Gaudi Framework by
1.8.18