23 typedef std::recursive_mutex tsDataSvcMutex;
63 "force creation of default leaves on registerObject" };
67 "enable incidents on data creation requests" };
71 "enable incidents on data access requests" };
77 std::unique_ptr<DataSvcHelpers::RegistryEntry>
m_root;
84 const std::string&
rootName()
const override;
189 StatusCode registerObject( std::string_view parentPath, std::string_view objPath,
DataObject* pObject )
override;
195 StatusCode unregisterObject( std::string_view fullPath )
override;
233 StatusCode unlinkObject( std::string_view fullPath )
override;
268 virtual DataObject* createDefaultObject()
const;
unsigned int CLID
Class ID definition.
A DataObject is the base class of any identifiable object on any data store.
Description of the DataStoreItem class.
Definition of an entry in the transient data store.
Implementation of property with value of concrete type.
Data provider interface definition.
virtual StatusCode retrieveObject(IRegistry *pDirectory, std::string_view path, DataObject *&pObject)=0
Retrieve object identified by its directory entry.
virtual StatusCode linkObject(IRegistry *from, std::string_view objPath, DataObject *toObj)=0
Add a link to another object.
virtual StatusCode unlinkObject(IRegistry *from, std::string_view objPath)=0
Remove a link to another object.
virtual StatusCode findObject(IRegistry *pDirectory, std::string_view path, DataObject *&pObject)=0
Find object identified by its directory entry.
StatusCode registerObject(std::string_view fullPath, DataObject *pObject)
Register object with the data store.
Generic data agent interface.
Opaque address interface definition.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Handle to be used in lieu of naked pointers to services.
This class is used for returning status codes from appropriate routines.
const std::string & rootName() const override
IDataManagerSvc: Accessor for root event name.
StatusCode i_setRoot(DataObject *pRootObj)
StatusCode setRoot(std::string root_name, DataObject *pRootObj) override
Initialize data store for new event by giving new event path and root object.
ServiceHandle< IIncidentSvc > m_incidentSvc
Handle to incident service.
Gaudi::Property< bool > m_forceLeaves
virtual StatusCode i_setRoot(std::string root_name, DataObject *pRootObj)
Initialize data store for new event by giving new event path and root object.
StatusCode objectParent(const DataObject *pObject, IRegistry *&refpParent) override
IDataManagerSvc: Explore the object store: retrieve the object's parent.
Gaudi::Property< CLID > m_rootCLID
Gaudi::Property< bool > m_enableFaultHdlr
Gaudi::Property< std::string > m_faultName
bool checkRoot()
Check if root path is valid.
TsDataSvc(const TsDataSvc &)=delete
no copy constructor
std::vector< DataStoreItem > m_preLoads
Items to be pre-loaded.
TsDataSvc & operator=(const TsDataSvc &)=delete
no assignment operator
StatusCode registerAddress(std::string_view fullPath, IOpaqueAddress *pAddress) override
IDataManagerSvc: Register object address with the data store.
Gaudi::Property< std::string > m_accessName
Gaudi::Property< std::vector< std::string > > m_inhibitPathes
StatusCode objectLeaves(const DataObject *pObject, std::vector< IRegistry * > &refLeaves) override
IDataManagerSvc: Explore the object store: retrieve all leaves attached to the object.
Gaudi::Property< bool > m_enableAccessHdlr
StatusCode traverseTree(IDataStoreAgent *pAgent) override
IDataManagerSvc: Analyze by traversing all data objects in the data store.
tsDataSvcMutex m_accessMutex
Mutex to protect access to the store.
StatusCode unregisterAddress(std::string_view fullPath) override
IDataManagerSvc: Unregister object address from the data store.
StatusCode clearSubTree(std::string_view sub_tree_path) override
IDataManagerSvc: Remove all data objects below the sub tree identified by its full path name.
StatusCode clearStore() override
IDataManagerSvc: Remove all data objects in the data store.
CLID rootCLID() const override
IDataManagerSvc: Accessor for root event CLID.
Gaudi::Property< std::string > m_rootName
std::unique_ptr< DataSvcHelpers::RegistryEntry > m_root
Pointer to root entry.
TsDataSvc(const std::string &name, ISvcLocator *svc)
constructor
IConversionSvc * m_dataLoader
Pointer to data loader service.
StatusCode i_setRoot(IOpaqueAddress *pRootAddr)
StatusCode traverseSubTree(std::string_view sub_tree_path, IDataStoreAgent *pAgent) override
IDataManagerSvc: Analyze by traversing all data objects below the sub tree identified by its full pat...
Base class used to extend a class implementing other interfaces.
virtual StatusCode registerAddress(std::string_view fullPath, IOpaqueAddress *pAddress)=0
Register object address with the data store.
virtual StatusCode unregisterAddress(std::string_view fullPath)=0
Unregister object address from the data store.