1 #ifndef GAUDIHIVE_DATAOBJECTHANDLE_H 2 #define GAUDIHIVE_DATAOBJECTHANDLE_H 11 #include <type_traits> 36 T*
get()
const {
return get(
true); }
47 bool exist()
const {
return get(
false) !=
nullptr; }
61 T*
get(
bool mustExist)
const;
78 auto dataObj =
fetch();
83 " from transient store.",
92 T* obj =
dynamic_cast<T*
>(dataObj);
99 +
" and is different from the one of the object in the store.");
112 return static_cast<T*
> (dataObj);
122 "DataObjectHandle<T>::put",
Define general base for Gaudi exception.
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
virtual const std::string & objKey() const
bool isSuccess() const
Test for a status code of SUCCESS.
SmartIF< IDataProviderSvc > m_EDS
bool exist() const
Check the existence of the object in the transient store.
DataObjectHandle.h GaudiKernel/DataObjectHandle.h.
This class is used for returning status codes from appropriate routines.
T * put(T *object)
Register object in transient store.
IDataHandleHolder * m_owner
DataObjectHandleBase GaudiKernel/DataObjectHandleBase.h.
DataObject * fetch() const
T * getIfExists() const
Bypass check of existence of object in transient store Only uses main location of the...
virtual StatusCode registerObject(const std::string &fullPath, DataObject *pObject)=0
Register object with the data store.
T * getOrCreate()
Get object from store or create a new one if it doesn't exist.
virtual IDataHandleHolder * owner() const
T * get() const
Retrieve object from transient data store.
DataObjectHandleBase(const DataObjID &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)