1 #ifndef GAUDIHIVE_DATAOBJECTHANDLEBASE_H 2 #define GAUDIHIVE_DATAOBJECTHANDLEBASE_H 39 template <class OWNER, class K, typename = typename std::enable_if<std::is_base_of<IProperty, OWNER>::value>
::type>
45 p->template setOwnerType<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.
void setWritten(bool wasWritten=true)
virtual ~DataObjectHandleBase()
SmartIF< IDataProviderSvc > m_EDS
void setRead(bool wasRead=true)
std::string toString() const
void setOptional(bool optional=true)
bool m_searchDone
Whether the search part of the fetch method (so dealing with alt names was already executed or not...
DataObjectHandleBase & operator=(const DataObjectHandleBase &)
This class is used for returning status codes from appropriate routines.
void fromString(const std::string &s)
StatusCode parse(DataObjectHandleBase &, const std::string &)
DataObjectHandleBase GaudiKernel/DataObjectHandleBase.h.
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...
std::string pythonRepr() const override
DataObject * fetch() const
GAUDI_API std::ostream & toStream(const DataObjectHandleBase &v, std::ostream &o)
SmartIF< IMessageSvc > m_MS
bool isOptional() const
Check if the data object declared is optional for the algorithm.
A DataObject is the base class of any identifiable object on any data store.
friend std::ostream & operator<<(std::ostream &str, const DataObjectHandleBase &d)
Helper functions to set/get the application return code.
virtual IDataHandleHolder * owner() const
DataObjectHandleBase(const DataObjID &k, Gaudi::DataHandle::Mode a, IDataHandleHolder *owner)