The Gaudi Framework  master (37c0b60a)
DataObjectReadHandle< T > Class Template Reference

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

Inheritance diagram for DataObjectReadHandle< T >:
Collaboration diagram for DataObjectReadHandle< T >:

Public Member Functions

 DataObjectReadHandle (const DataObjID &k, IDataHandleHolder *owner)
 
template<typename OWNER , typename K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
 DataObjectReadHandle (OWNER *owner, std::string propertyName, K key={}, std::string doc="")
 Autodeclaring constructor with property name, mode, key and documentation. More...
 
template<typename... Args>
 DataObjectReadHandle (std::tuple< Args... > &&args)
 
- Public Member Functions inherited from DataObjectHandle< T >
T * get () const
 Retrieve object from transient data store. More...
 
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...
 
T * getOrCreate () const
 Get object from store or create a new one if it doesn't exist. More...
 
T * put (std::unique_ptr< T > object) const
 Register object in transient store. More...
 
T * put (T *object) const
 
std::string pythonRepr () const override
 
 DataObjectHandleBase (DataObjID k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
 DataObjectHandleBase (std::string k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
 DataObjectHandleBase (const DataObjectHandleBase &)=delete
 
 DataObjectHandleBase (DataObjectHandleBase &&)
 
template<class OWNER , class K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
 DataObjectHandleBase (OWNER *owner, Gaudi::DataHandle::Mode m, std::string name, 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>
 DataObjectReadHandle (std::tuple< Args... > &&args, std::index_sequence< Is... >)
 

Detailed Description

template<typename T>
class DataObjectReadHandle< T >

Definition at line 452 of file DataObjectHandle.h.

Constructor & Destructor Documentation

◆ DataObjectReadHandle() [1/4]

template<typename T >
template<typename... Args, std::size_t... Is>
DataObjectReadHandle< T >::DataObjectReadHandle ( std::tuple< Args... > &&  args,
std::index_sequence< Is... >   
)
inlineprivate

Definition at line 454 of file DataObjectHandle.h.

455  : DataObjectReadHandle( std::get<Is>( std::move( args ) )... ) {}

◆ DataObjectReadHandle() [2/4]

template<typename T >
DataObjectReadHandle< T >::DataObjectReadHandle ( const DataObjID k,
IDataHandleHolder owner 
)
inline

Definition at line 458 of file DataObjectHandle.h.

◆ DataObjectReadHandle() [3/4]

template<typename T >
template<typename OWNER , typename K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
DataObjectReadHandle< T >::DataObjectReadHandle ( OWNER *  owner,
std::string  propertyName,
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 464 of file DataObjectHandle.h.

464  {}, std::string doc = "" )
466  std::move( doc ) ) {}

◆ DataObjectReadHandle() [4/4]

template<typename T >
template<typename... Args>
DataObjectReadHandle< T >::DataObjectReadHandle ( std::tuple< Args... > &&  args)
inline

Definition at line 469 of file DataObjectHandle.h.

470  : DataObjectReadHandle( std::move( args ), std::index_sequence_for<Args...>{} ) {}

The documentation for this class was generated from the following file:
std::string
STL class.
std::move
T move(T... args)
DataObjectHandle
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition: AlgTool.h:36
gaudirun.args
args
Definition: gaudirun.py:336
Gaudi::DataHandle::Reader
@ Reader
Definition: DataHandle.h:40
ProduceConsume.key
key
Definition: ProduceConsume.py:84
DataObjectReadHandle::DataObjectReadHandle
DataObjectReadHandle(std::tuple< Args... > &&args, std::index_sequence< Is... >)
Definition: DataObjectHandle.h:454