The Gaudi Framework  v36r1 (3e2fb5a8)
DeprecatedDynamicDataObjectHandle< T > Struct Template Reference

Transitional class to help moving all code to Handles even if some usage requires 'dynamic' behavior, that is handles declared at run time only and not registered in their owner. More...

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

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

Public Member Functions

template<class OWNER , class K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
 DeprecatedDynamicDataObjectHandle (OWNER const *owner, const K &key={})
 
- 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 (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 &&)
 
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, const K &key={}, std::string doc="")
 Autodeclaring constructor with property name, mode, key and documentation. More...
 

Detailed Description

template<typename T>
struct DeprecatedDynamicDataObjectHandle< T >

Transitional class to help moving all code to Handles even if some usage requires 'dynamic' behavior, that is handles declared at run time only and not registered in their owner.

Again should no be used for long term code, only for helping in the transition. It is bound to be marked Deprecated and then dropped

Note : as the handles of this type are not registered, their init method is called directly in the constructor. So they cannot be used at initialization time safely. These are really pure runtime beasts

Definition at line 459 of file DataObjectHandle.h.

Constructor & Destructor Documentation

◆ DeprecatedDynamicDataObjectHandle()

template<typename T >
template<class OWNER , class K , typename = std::enable_if_t<std::is_base_of_v<IProperty, OWNER>>>
DeprecatedDynamicDataObjectHandle< T >::DeprecatedDynamicDataObjectHandle ( OWNER const *  owner,
const K &  key = {} 
)
inline

Definition at line 461 of file DataObjectHandle.h.

461  {} )
462  : DataObjectHandle<T>( key, const_cast<OWNER*>( owner ) ) {
463  this->init();
464  }

The documentation for this struct was generated from the following file:
DataObjectHandle
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition: AlgTool.h:36
ProduceConsume.key
key
Definition: ProduceConsume.py:52