The Gaudi Framework  v29r0 (ff2e7097)
DataObjectWriteHandle< T > Struct Template Reference

#include <GaudiKernel/DataObjectHandle.h>

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

Public Member Functions

 DataObjectWriteHandle (const DataObjID &k, IDataHandleHolder *owner)
 
 DataObjectWriteHandle (DataObjectWriteHandle &&)=default
 
template<class OWNER , class K , typename = typename std::enable_if<std::is_base_of<IProperty, OWNER>::value>::type>
 DataObjectWriteHandle (OWNER *owner, std::string name, const K &key={}, std::string doc="")
 Autodeclaring constructor with property name, mode, key and documentation. More...
 
- 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 ()
 Get object from store or create a new one if it doesn't exist. More...
 
T * put (T *object)
 Register object in transient store. More...
 
- Public Member Functions inherited from DataObjectHandleBase
 DataObjectHandleBase (const DataObjID &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
 DataObjectHandleBase (const std::string &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)
 
virtual ~DataObjectHandleBase ()
 
 DataObjectHandleBase (const DataObjectHandleBase &)=delete
 
 DataObjectHandleBase (DataObjectHandleBase &&)
 
DataObjectHandleBaseoperator= (const DataObjectHandleBase &)
 
template<class OWNER , class K , typename = typename std::enable_if<std::is_base_of<IProperty, OWNER>::value>::type>
 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...
 
std::string toString () const
 
std::string pythonRepr () const override
 
void fromString (const std::string &s)
 
bool isOptional () const
 Check if the data object declared is optional for the algorithm. More...
 
void setOptional (bool optional=true)
 
bool initialized () const
 
bool wasRead () const
 
bool wasWritten () const
 
bool isValid () const
 
- Public Member Functions inherited from Gaudi::DataHandle
 DataHandle (const DataObjID &k, Mode a=Reader, IDataHandleHolder *owner=nullptr)
 
 DataHandle (const DataObjID &k, const bool &isCond, Mode a=Reader, IDataHandleHolder *owner=nullptr)
 
virtual ~DataHandle ()=default
 
virtual void setOwner (IDataHandleHolder *o)
 
virtual IDataHandleHolderowner () const
 
virtual Mode mode () const
 
virtual void setKey (const DataObjID &key) const
 
virtual void updateKey (const std::string &key) const
 
virtual const std::stringobjKey () const
 
virtual const DataObjIDfullKey () const
 
virtual void reset (bool)
 
virtual StatusCode commit ()
 
virtual bool isCondition () const
 

Additional Inherited Members

- Public Types inherited from Gaudi::DataHandle
enum  Mode { Reader = 1 << 2, Writer = 1 << 4, Updater = Reader | Writer }
 
- Protected Member Functions inherited from DataObjectHandleBase
void setRead (bool wasRead=true)
 
void setWritten (bool wasWritten=true)
 
bool init () override
 
DataObjectfetch () const
 
- Protected Attributes inherited from DataObjectHandleBase
SmartIF< IDataProviderSvcm_EDS
 
SmartIF< IMessageSvcm_MS
 
bool m_init = false
 
bool m_optional = false
 
bool m_wasRead = false
 
bool m_wasWritten = false
 
bool m_searchDone = false
 Whether the search part of the fetch method (so dealing with alt names was already executed or not. More...
 
std::mutex m_searchMutex
 A Mutex protecting the calls to the search part of the fetch method, so that we are sure that we only call it once. More...
 
- Protected Attributes inherited from Gaudi::DataHandle
DataObjID m_key = {"NONE"}
 The key of the object behind this DataHandle Although it may look strange to have it mutable, this can actually change in case the object had alternative names, and it should not be visible to the end user, for which the Handle is still the same. More...
 
IDataHandleHolderm_owner = nullptr
 

Detailed Description

template<typename T>
struct DataObjectWriteHandle< T >

Definition at line 84 of file DataObjectHandle.h.

Constructor & Destructor Documentation

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

Definition at line 85 of file DataObjectHandle.h.

DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition: AlgTool.h:27
template<typename T >
DataObjectWriteHandle< T >::DataObjectWriteHandle ( DataObjectWriteHandle< T > &&  )
default
template<typename T >
template<class OWNER , class K , typename = typename std::enable_if<std::is_base_of<IProperty, OWNER>::value>::type>
DataObjectWriteHandle< T >::DataObjectWriteHandle ( OWNER *  owner,
std::string  name,
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 99 of file DataObjectHandle.h.

99  {}, std::string doc = "" )
101  {
102  }
STL class.
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
Definition: AlgTool.h:27
T move(T...args)
virtual IDataHandleHolder * owner() const
Definition: DataHandle.h:42

The documentation for this struct was generated from the following file: