![]() |
The Gaudi Framework
v30r4 (9b837755)
|
Reentrant write handle for event data. More...
#include <GaudiKernel/EventDataHandle.h>
Public Member Functions | |
template<typename Owner > | |
EventWriteHandle (Owner *owner, const std::string &propertyName, DataObjID defaultID, const std::string &docString="") | |
Create a WriteHandle and set up the associated Gaudi property. More... | |
const T & | put (const EventContext &ctx, T data) const |
Move data into the store. More... | |
const T & | put (const EventContext &ctx, std::unique_ptr< DataObject > ptr) const |
Transfer ownership of heap-allocated data to the store. More... | |
![]() | |
void | initialize (const IDataHandleHolder &owner) final override |
Initialize the data handle. More... | |
![]() | |
DataHandle (const DataHandle &)=delete | |
DataHandle & | operator= (const DataHandle &)=delete |
DataHandle (DataHandle &&)=default | |
DataHandle & | operator= (DataHandle &&)=delete |
AccessMode | access () const |
const DataObjID & | targetKey () const |
(Configurable) ID of the data being accessed via this handle More... | |
void | setTargetKey (const DataObjID &id) |
Change the ID of the target data. More... | |
bool | ownerSetupDone () const |
Truth that owner setup has been performed. More... | |
template<typename Owner , std::enable_if_t< std::is_base_of< IDataHandleHolder, Owner >::value > * = nullptr> | |
void | setOwner (Owner &owner) |
Setup the owner of this DataHandle. More... | |
Protected Types | |
using | AccessMode = DataHandle::AccessMode |
![]() | |
using | AccessMode = DataHandle::AccessMode |
Private Member Functions | |
void | putImpl (const EventContext &, std::unique_ptr< DataObject > &&ptr) const |
Insert a valid DataObject into the transient event store. More... | |
Additional Inherited Members | |
![]() | |
using | AccessMode = IDataHandleMetadata::AccessMode |
![]() | |
template<typename Owner > | |
EventDataHandle (Owner &owner, const std::string &propertyName, DataObjID &&defaultID, const std::string &docString, const Metadata &metadata) | |
Handles are constructed like a Gaudi property (and effectively behave as one, which sets the associated data object identifier) More... | |
![]() | |
template<typename Owner , typename T = DataObjID, std::enable_if_t< std::is_base_of< IDataHandleHolder, Owner >::value > * = nullptr> | |
DataHandle (Owner &owner, const std::string &propertyName, T &&defaultID, const std::string &docString, const IDataHandleMetadata &metadata) | |
Handles are constructed like a Gaudi property (and effectively behave as one, which sets the associated data object identifier) More... | |
template<typename T = DataObjID> | |
DataHandle (const std::string &propertyName, T &&defaultID, const std::string &docString, const IDataHandleMetadata &metadata) | |
The above constructor is easier to use correctly, and therefore preferred. More... | |
![]() | |
IDataProviderSvc * | m_whiteBoard = nullptr |
Pointer to the whiteboard, set during initialize() More... | |
![]() | |
static const Metadata | s_readHandleMetadata |
static const Metadata | s_writeHandleMetadata |
Reentrant write handle for event data.
Definition at line 112 of file EventDataHandle.h.
|
protected |
Definition at line 115 of file EventDataHandle.h.
|
inline |
Create a WriteHandle and set up the associated Gaudi property.
Definition at line 120 of file EventDataHandle.h.
|
inline |
Move data into the store.
Definition at line 127 of file EventDataHandle.h.
|
inline |
Transfer ownership of heap-allocated data to the store.
This is intended as a way to inject legacy non-movable DataObjects into the store. New data types should be movable and use the other overload of put. This method will eventually be removed.
Definition at line 140 of file EventDataHandle.h.
|
inlineprivate |
Insert a valid DataObject into the transient event store.
Definition at line 149 of file EventDataHandle.h.