1 #ifndef GAUDIKERNEL_TSDATASVC_H 2 #define GAUDIKERNEL_TSDATASVC_H 12 #include "tbb/recursive_mutex.h" 13 #include "tbb/spin_mutex.h" 16 typedef tbb::recursive_mutex tsDataSvcMutex;
66 Gaudi::Property<bool> m_forceLeaves{
this,
"ForceLeaves",
false,
"force creation of default leaves on registerObject"};
70 "enable incidents on data creation requests"};
74 "enable incidents on data access requests"};
82 DataSvcHelpers::InhibitMap* m_inhibitMap =
nullptr;
86 CLID rootCLID()
const override;
101 StatusCode unregisterAddress( boost::string_ref fullPath )
override;
123 StatusCode clearSubTree( boost::string_ref sub_tree_path )
override;
194 StatusCode registerObject( boost::string_ref parentPath, boost::string_ref objPath,
DataObject* pObject )
override;
200 StatusCode unregisterObject( boost::string_ref fullPath )
override;
238 StatusCode unlinkObject( boost::string_ref fullPath )
override;
256 using extends::extends;
273 virtual DataObject* createDefaultObject()
const;
299 #endif // GAUDIKERNEL_TSDATASVC_H virtual StatusCode unlinkObject(IRegistry *from, boost::string_ref objPath)=0
Remove a link to another object.
Implementation of property with value of concrete type.
tsDataSvcMutex m_accessMutex
Mutex to protect access to the store.
virtual StatusCode findObject(IRegistry *pDirectory, boost::string_ref path, DataObject *&pObject)=0
Find object identified by its directory entry.
Data provider interface definition.
Description of the DataStoreItem class.
PropertyMgr & operator=(const PropertyMgr &)=delete
virtual StatusCode linkObject(IRegistry *from, boost::string_ref objPath, DataObject *toObj)=0
Add a link to another object.
This class is used for returning status codes from appropriate routines.
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.
unsigned int CLID
Class ID definition.
Definition of an entry in the transient data store.
std::unique_ptr< DataSvcHelpers::RegistryEntry > m_root
Pointer to root entry.
virtual StatusCode unregisterAddress(boost::string_ref fullPath)=0
Unregister object address from the data store.
StatusCode registerObject(boost::string_ref fullPath, DataObject *pObject)
Register object with the data store.
StatusCode i_setRoot(IOpaqueAddress *pRootAddr)
Generic data agent interface.
Base class used to extend a class implementing other interfaces.
std::vector< DataStoreItem > m_preLoads
Items to be pre-loaded.
virtual StatusCode registerAddress(boost::string_ref fullPath, IOpaqueAddress *pAddress)=0
Register object address with the data store.
bool checkRoot()
Check if root path is valid.
Opaque address interface definition.
A DataObject is the base class of any identifiable object on any data store.
The interface implemented by the IncidentSvc service.
StatusCode i_setRoot(DataObject *pRootObj)