2 #ifndef GAUDIKERNEL_REGISTRYENTRY_H
3 #define GAUDIKERNEL_REGISTRYENTRY_H
20 namespace DataSvcHelpers {
37 typedef std::vector<IRegistry*>
Store;
39 friend class ::DataSvc;
68 void assemblePath(std::string& buffer)
const;
82 m_pDataProviderSvc =
s;
110 virtual unsigned long release();
116 const std::string&
name()
const {
125 return m_pDataProviderSvc;
149 return m_store.size();
153 return m_store.size() == 0;
157 return m_store.begin();
161 return m_store.end();
177 virtual long add(
const std::string& name,
179 bool is_soft =
false);
181 virtual long add(
const std::string& name,
183 bool is_soft =
false);
185 virtual long remove(
const std::string& name);
191 virtual long deleteElements();
196 #endif // GAUDIKERNEL_REGISTRYENTRY_H
RegistryEntry * findLeaf(const std::string &path) const
Find identified leaf in this registry node.
virtual unsigned long addRef()
IInterface implementation: Dereference the object.
RegistryEntry * findLeaf(const DataObject *key) const
Find identified leaf in this registry node.
RegistryEntry * m_pParent
Pointer to parent.
std::vector< IRegistry * > Store
Definition of datastore type.
const Store & leaves() const
Access the leaves of the object.
Data provider interface definition.
virtual RegistryEntry * parentEntry()
Pointer to parent registry entry.
std::string m_fullpath
String containing full path of the object (volatile)
virtual bool isSoft() const
Is the link soft or hard.
virtual IOpaqueAddress * address() const
Retrieve opaque storage address.
virtual Iterator begin() const
Return starting point for container iteration.
IDataProviderSvc * m_pDataProviderSvc
Pointer to hosting transient store.
void setDataSvc(IDataProviderSvc *s)
Set the transient data store.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
virtual bool isEmpty() const
Simple check if the Container is empty.
Store::const_iterator Iterator
Iterator definition.
IOpaqueAddress * m_pAddress
Pointer to opaque address (load info)
virtual IDataProviderSvc * dataSvc() const
Retrieve pointer to Transient Store.
bool m_isSoft
Is the link soft or hard?
GAUDI_API std::string path(const AIDA::IBaseHistogram *aida)
get the path in THS for AIDA histogram
Definition of an entry in the transient data store.
virtual IRegistry * find(const std::string &path) const
Try to find an object identified by its relative name to the directory.
DataObject * m_pObject
Pointer to object.
virtual const std::string & identifier() const
Full identifier (or key)
unsigned long m_refCount
Reference counter.
const std::string & name() const
Retrieve name of the entry.
virtual IRegistry * parent() const
Pointer to parent directory entry.
Generic data agent interface.
virtual int size() const
Return the size of the container(=number of objects)
Store m_store
Store of leaves.
std::string m_path
Path name.
virtual DataObject * object() const
Retrive object behind the link.
Opaque address interface definition.
A DataObject is the base class of any identifiable object on any data store.
virtual IRegistry * find(const IRegistry *obj) const
Try to find an object identified by its pointer.
virtual Iterator end() const
Return end elemtn if the container.