The Gaudi Framework  v36r1 (3e2fb5a8)
DataObjectWriteHandle< T, U > Class Template Reference

#include </builds/gaudi/Gaudi/GaudiKernel/include/GaudiKernel/DataObjectHandle.h>

Inheritance diagram for DataObjectWriteHandle< T, U >:
Collaboration diagram for DataObjectWriteHandle< T, U >:

Public Member Functions

 DataObjectWriteHandle (const DataObjID &k, IDataHandleHolder *owner)
 
template<typename OWNER , typename K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
 DataObjectWriteHandle (OWNER *owner, std::string propertyName, const K &key={}, std::string doc="")
 Autodeclaring constructor with property name, mode, key and documentation. More...
 
template<typename... Args>
 DataObjectWriteHandle (const std::tuple< Args... > &args)
 
- Public Member Functions inherited from DataObjectHandle<::details::Payload_t< T, T > >
::details::Payload_t< T, T > * get () const
 Retrieve object from transient data store. More...
 
::details::Payload_t< T, T > * getIfExists () const
 Bypass check of existence of object in transient store Only uses main location of the. More...
 
bool exist () const
 Check the existence of the object in the transient store. More...
 
::details::Payload_t< T, T > * getOrCreate () const
 Get object from store or create a new one if it doesn't exist. More...
 
::details::Payload_t< T, T > * put (std::unique_ptr< ::details::Payload_t< T, T > > object) const
 Register object in transient store. More...
 
::details::Payload_t< T, T > * put (::details::Payload_t< T, T > *object) const
 
std::string pythonRepr () const override
 
 DataObjectHandleBase (const DataObjID &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
 DataObjectHandleBase (const std::string &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
 DataObjectHandleBase (const DataObjectHandleBase &)=delete
 
 DataObjectHandleBase (DataObjectHandleBase &&)
 
 DataObjectHandleBase (OWNER *owner, Gaudi::DataHandle::Mode m, std::string name, const K &key={}, std::string doc="")
 Autodeclaring constructor with property name, mode, key and documentation. More...
 

Private Member Functions

template<typename... Args, std::size_t... Is>
 DataObjectWriteHandle (const std::tuple< Args... > &args, std::index_sequence< Is... >)
 

Detailed Description

template<typename T, typename U = T>
class DataObjectWriteHandle< T, U >

Definition at line 420 of file DataObjectHandle.h.

Constructor & Destructor Documentation

◆ DataObjectWriteHandle() [1/4]

template<typename T , typename U = T>
template<typename... Args, std::size_t... Is>
DataObjectWriteHandle< T, U >::DataObjectWriteHandle ( const std::tuple< Args... > &  args,
std::index_sequence< Is... >   
)
inlineprivate

Definition at line 422 of file DataObjectHandle.h.

423  : DataObjectWriteHandle( std::get<Is>( args )... ) {}

◆ DataObjectWriteHandle() [2/4]

template<typename T , typename U = T>
DataObjectWriteHandle< T, U >::DataObjectWriteHandle ( const DataObjID k,
IDataHandleHolder owner 
)
inline

◆ DataObjectWriteHandle() [3/4]

template<typename T , typename U = T>
template<typename OWNER , typename K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
DataObjectWriteHandle< T, U >::DataObjectWriteHandle ( OWNER *  owner,
std::string  propertyName,
const K &  key = {},
std::string  doc = "" 
)
inline

Autodeclaring constructor with property name, mode, key and documentation.

Note
the use std::enable_if is required to avoid ambiguities

Definition at line 432 of file DataObjectHandle.h.

432  {}, std::string doc = "" )
434  std::move( doc ) ) {}

◆ DataObjectWriteHandle() [4/4]

template<typename T , typename U = T>
template<typename... Args>
DataObjectWriteHandle< T, U >::DataObjectWriteHandle ( const std::tuple< Args... > &  args)
inline

Definition at line 437 of file DataObjectHandle.h.

438  : DataObjectWriteHandle( args, std::index_sequence_for<Args...>{} ) {}

The documentation for this class was generated from the following file:
details::Payload_t
typename Payload_helper< T, U >::type Payload_t
Definition: DataObjectHandle.h:87
std::string
STL class.
std::move
T move(T... args)
DataObjectHandle
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition: AlgTool.h:36
Gaudi::DataHandle::Writer
@ Writer
Definition: DataHandle.h:40
DataObjectWriteHandle::DataObjectWriteHandle
DataObjectWriteHandle(const std::tuple< Args... > &args, std::index_sequence< Is... >)
Definition: DataObjectHandle.h:422
gaudirun.args
args
Definition: gaudirun.py:319
ProduceConsume.key
key
Definition: ProduceConsume.py:52