Loading [MathJax]/jax/output/HTML-CSS/config.js
The Gaudi Framework
v28r2p1 (f1a77ff4)
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
AnyDataHandle.h
Go to the documentation of this file.
1
#ifndef GAUDIKERNEL_ANYDATAHANDLE_H
2
#define GAUDIKERNEL_ANYDATAHANDLE_H
3
4
#include "
GaudiKernel/AnyDataWrapper.h
"
5
#include <
GaudiKernel/DataObjectHandle.h
>
6
7
//TODO: we should derive directly from DataObjectHandleBase
8
// now that that is sufficient to get all the declareProperty
9
// stuff done... (thanks to the SFINAE constraints in
10
// Algortihm and AlgTool!)
11
// And then we can avoid any confusion with the DataObjectHandle
12
// interface.
13
template
<
typename
T>
14
struct
AnyDataHandle
final :
public
DataObjectHandle
<AnyDataWrapper<T> > {
15
16
using
DataObjectHandle<AnyDataWrapper<T>
>
::DataObjectHandle
;
17
21
const
T*
get
()
const
;
22
26
const
T*
put
(T&&
object
);
27
28
};
29
30
//---------------------------------------------------------------------------
31
32
template
<
typename
T>
33
const
T*
AnyDataHandle<T>::get
()
const
{
34
auto
doh =
DataObjectHandle<AnyDataWrapper<T>
>
::get
();
35
return
&(doh->getData());
36
}
37
38
//---------------------------------------------------------------------------
39
40
template
<
typename
T>
41
const
T*
AnyDataHandle<T>::put
(T&& objectp){
42
auto
dw =
new
AnyDataWrapper<T>
(
std::move
(objectp));
43
return
&
DataObjectHandle<AnyDataWrapper<T>
>
::put
(dw)->getData();
44
}
45
46
47
#endif
AnyDataHandle
Definition:
AnyDataHandle.h:14
AnyDataWrapper.h
AnyDataHandle::put
const T * put(T &&object)
Register object in transient store.
Definition:
AnyDataHandle.h:41
DataObjectHandle
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition:
AlgTool.h:27
AnyDataWrapper
Definition:
AnyDataWrapper.h:14
std::move
T move(T...args)
AnyDataHandle::get
const T * get() const
Retrieve object from transient data store.
Definition:
AnyDataHandle.h:33
DataObjectHandle.h
GaudiKernel
GaudiKernel
AnyDataHandle.h
Generated on Mon Jun 18 2018 10:31:04 for The Gaudi Framework by
1.8.11