10 #define KERNEL_SMARTREFBASE_CPP 1 106 if ( link )
return link->
path();
109 return s_empty_string;
const std::string & path() const
Access to path of object.
bool isEqualEx(const DataObject *pObj, const SmartRefBase &c) const
Extended equality check.
const ContainedObject * accessData(const ContainedObject *typ) const
Load on demand of ContainedObject like references.
const DataObject * m_data
Object data: Pointer to the identifiable object the link originates.
ObjectContainerBase _Container
long m_hintID
Object data: ID of the link hint to the identifiable object.
virtual long index() const
Distance in the parent container.
User example objects: SmartRefBase.
Data provider interface definition.
const ObjectContainerBase * parent() const
Access to parent object.
IRegistry * registry() const
Get pointer to Registry.
LinkManager * linkMgr() const
Retrieve Link manager.
virtual ContainedObject * containedObject(long dist) const =0
Pointer to an object of a given distance.
const ContainedObject * m_contd
Object data: Pointer to the Contained object (if applicable)
void setObject(const DataObject *pObject)
Update object pointer.
const std::string & path() const
Shortcut to access the path to the linked object.
virtual const id_type & identifier() const =0
Full identifier (or key)
Link * link(long id)
Retrieve symbolic link identified by ID.
virtual IDataProviderSvc * dataSvc() const =0
Retrieve pointer to Transient Store.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
virtual StatusCode retrieveObject(IRegistry *pDirectory, boost::string_ref path, DataObject *&pObject)=0
Retrieve object identified by its directory entry.
long m_linkID
Object data: ID of the object within the identifiable container (if any)
All classes that their objects may be contained in an LHCb ObjectContainer (e.g.
ObjectContainerBase is the base class for Gaudi container classes.
void set(DataObject *pObj, long hint_id, long link_id)
Setup smart reference when reading. Must be allowed from external sources.
const DataObject * object() const
Const access to data object.
Embedded class defining a symbolic link Note: No copy constructor; bitwise copy (done by the compiler...
A DataObject is the base class of any identifiable object on any data store.
A LinkManager is the object aggregated into a DataObject, which is responsible for the handling of no...