91 const Link* link(
long id )
const;
92 Link* link(
long id );
94 const Link* link(
const DataObject* pObject )
const;
97 const Link* link( std::string_view path )
const;
98 Link* link( std::string_view path );
100 long addLink(
const std::string& path,
const DataObject* pObject );
102 auto end()
const {
return std::default_sentinel; }
110 bool operator==( std::default_sentinel_t )
const {
return i == parent->
size(); }
115 const Link& operator*()
const {
return *parent->
link( i ); }
bool operator==(const GaudiUtils::Allocator< T1 > &, const GaudiUtils::Allocator< T2 > &)
boost::spirit::classic::position_iterator2< ForwardIterator > Iterator
A DataObject is the base class of any identifiable object on any data store.
Opaque address interface definition.
Embedded class defining a symbolic link Note: No explicit copy constructor; implicit compiler generat...
const std::string & path() const
Access to path of object.
void setObject(const DataObject *pObject)
Update object pointer.
const DataObject * object() const
Const access to data object.
DataObject * m_pObject
Pointer to object behind the link.
bool operator==(const Link &link) const
Equality operator: check paths only.
long ID() const
Link identifier.
Link()=default
Standard constructor for Root I/O.
std::string m_path
String containing path of symbolic link.
Link(long id, std::string path, DataObject *pObject=nullptr)
Standard constructor.
LinkManager & operator=(LinkManager const &)=delete
LinkManager & operator=(LinkManager &&)=default
std::vector< Link * > m_linkVector
@ TODO: replace by std::vector<std::unique_ptr<Link>> once ROOT does 'automatic' schema conversion fr...
long size() const
Retrieve number of link present.
const Link * link(long id) const
Retrieve symbolic link identified by ID.
LinkManager(LinkManager const &)=delete
LinkManager(LinkManager &&)=default
DirLinkType
Directory link types.
LinkManager()=default
Standard Constructor.