The Gaudi Framework  v30r3 (a5ef0a68)
IDataManagerSvc Class Referenceabstract

#include <GaudiKernel/IDataManagerSvc.h>

Inheritance diagram for IDataManagerSvc:
Collaboration diagram for IDataManagerSvc:

Public Member Functions

 DeclareInterfaceID (IDataManagerSvc, 4, 0)
 InterfaceID. More...
 
virtual CLID rootCLID () const =0
 Get class ID of root Event. More...
 
virtual const std::stringrootName () const =0
 Get Name of root Event. More...
 
virtual StatusCode setDataLoader (IConversionSvc *svc, IDataProviderSvc *dpsvc=nullptr)=0
 Pass a default data loader to the service. More...
 
virtual StatusCode objectParent (const DataObject *pObject, IRegistry *&refpParent)=0
 IDataManagerSvc: Explore the object store: retrieve the object's parent. More...
 
virtual StatusCode objectParent (const IRegistry *pRegistry, IRegistry *&refpParent)=0
 IDataManagerSvc: Explore the object store: retrieve the object's parent. More...
 
virtual StatusCode objectLeaves (const DataObject *pObject, std::vector< IRegistry * > &refLeaves)=0
 Explore the object store: retrieve all leaves attached to the object The object is identified by its pointer. More...
 
virtual StatusCode objectLeaves (const IRegistry *pRegistry, std::vector< IRegistry * > &refLeaves)=0
 Explore the object store: retrieve all leaves attached to the object The object is identified by the pointer to the registry entry. More...
 
virtual StatusCode clearSubTree (boost::string_ref sub_path)=0
 Remove all data objects below the sub tree identified by its full path name. More...
 
virtual StatusCode clearSubTree (DataObject *pObject)=0
 Remove all data objects below the sub tree identified by the object. More...
 
virtual StatusCode clearStore ()=0
 Remove all data objects in the data store. More...
 
virtual StatusCode traverseSubTree (boost::string_ref sub_path, IDataStoreAgent *pAgent)=0
 Analyse by traversing all data objects below the sub tree identified by its full path name. More...
 
virtual StatusCode traverseSubTree (DataObject *pObject, IDataStoreAgent *pAgent)=0
 Analyse by traversing all data objects below the sub tree identified by the object. More...
 
virtual StatusCode traverseTree (IDataStoreAgent *pAgent)=0
 Analyse by traversing all data objects in the data store. More...
 
virtual StatusCode setRoot (std::string root_name, DataObject *pObject)=0
 Initialize data store for new event by giving new event path. More...
 
virtual StatusCode setRoot (std::string root_path, IOpaqueAddress *pRootAddr)=0
 Initialize data store for new event by giving new event path. More...
 
virtual StatusCode registerAddress (boost::string_ref fullPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode registerAddress (DataObject *parentObj, boost::string_ref objectPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode registerAddress (IRegistry *parentObj, boost::string_ref objectPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode unregisterAddress (boost::string_ref fullPath)=0
 Unregister object address from the data store. More...
 
virtual StatusCode unregisterAddress (DataObject *pParent, boost::string_ref objPath)=0
 Unregister object address from the data store. More...
 
virtual StatusCode unregisterAddress (IRegistry *pParent, boost::string_ref objPath)=0
 Unregister object address from the data store. More...
 

Additional Inherited Members

- Public Types inherited from extend_interfaces< IInterface >
using ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids... >::type
 take union of the ext_iids of all Interfaces... More...
 

Detailed Description

The data manager interface of the service allows to:

  • Discard sub-trees or the entire data stored.
  • Initialize the top level root used for navigation.
  • Access the tree information of the data store: Given a reference to a store object, which can be identified by path, pointer or reference to the registry entry, it is possible to retrieve the parent object and to access iterators over the leaf entries.
  • Register addresses to the data store. Registered addresses contain the retrieve information for the underlying object.
  • Unregister addresses from the data store. The object will no longer be accessible and loadable.
Author
Markus Frank
Version
1.0

Definition at line 46 of file IDataManagerSvc.h.

Member Function Documentation

virtual StatusCode IDataManagerSvc::clearStore ( )
pure virtual

Remove all data objects in the data store.

Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::clearSubTree ( boost::string_ref  sub_path)
pure virtual

Remove all data objects below the sub tree identified by its full path name.

Parameters
sub_path[IN] Path to sub-tree node.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::clearSubTree ( DataObject pObject)
pure virtual

Remove all data objects below the sub tree identified by the object.

The object itself is removed as well.

Parameters
pObject[IN] Pointer to object
Returns
Status code indicating success or failure
IDataManagerSvc::DeclareInterfaceID ( IDataManagerSvc  ,
,
 
)
virtual StatusCode IDataManagerSvc::objectLeaves ( const DataObject pObject,
std::vector< IRegistry * > &  refLeaves 
)
pure virtual

Explore the object store: retrieve all leaves attached to the object The object is identified by its pointer.

Allow to access and browse the leaf objects of the identified object.

Parameters
pObject[IN] Pointer to the object.
refLeaves[OUT] Reference to storage location, where the objects leaves should be stored.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::objectLeaves ( const IRegistry pRegistry,
std::vector< IRegistry * > &  refLeaves 
)
pure virtual

Explore the object store: retrieve all leaves attached to the object The object is identified by the pointer to the registry entry.

Allow to access and browse the leaf objects of the identified object.

Parameters
pRegistry[IN] Pointer to the registry of the obejct.
refLeaves[OUT] Reference to storage location, where the objects leaves should be stored.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::objectParent ( const DataObject pObject,
IRegistry *&  refpParent 
)
pure virtual

IDataManagerSvc: Explore the object store: retrieve the object's parent.

The object is identified by its pointer.

Parameters
pObject[IN] Pointer to the object.
refpParent[OUT] Reference to store the parent's registry entry.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::objectParent ( const IRegistry pRegistry,
IRegistry *&  refpParent 
)
pure virtual

IDataManagerSvc: Explore the object store: retrieve the object's parent.

The object is identified by the pointer to the registry entry.

Parameters
pRegistry[IN] Pointer to the object.
refpParent[OUT] Reference to store the parent's registry entry.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::registerAddress ( boost::string_ref  fullPath,
IOpaqueAddress pAddress 
)
pure virtual

Register object address with the data store.

Connect the object identified by its pointer to the node object identified by its path.

Parameters
fullPath[IN] Path to parent node of the object.
pAddress[IN] Pointer to the object to be registered.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::registerAddress ( DataObject parentObj,
boost::string_ref  objectPath,
IOpaqueAddress pAddress 
)
pure virtual

Register object address with the data store.

Connect the object identified by its pointer to the parent object and the relative path of the object with respect to the parent.

Parameters
parentObj[IN] Pointer to parent object.
objectPath[IN] Path of the object relative to the parent node
pAddress[IN] Pointer to the object to be connected.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::registerAddress ( IRegistry parentObj,
boost::string_ref  objectPath,
IOpaqueAddress pAddress 
)
pure virtual

Register object address with the data store.

Connect the object identified by its pointer to the parent object and the relative path of the object with respect to the parent.

Parameters
parentObj[IN] Pointer to parent object.
objectPath[IN] Path of the object relative to the parent node
pAddress[IN] Pointer to the object to be connected.
Returns
Status code indicating success or failure.
virtual CLID IDataManagerSvc::rootCLID ( ) const
pure virtual

Get class ID of root Event.

virtual const std::string& IDataManagerSvc::rootName ( ) const
pure virtual

Get Name of root Event.

virtual StatusCode IDataManagerSvc::setDataLoader ( IConversionSvc svc,
IDataProviderSvc dpsvc = nullptr 
)
pure virtual

Pass a default data loader to the service.

This service will be asked to load non existant data items.

Parameters
svc[IN] Pointer to persistency service instance
dpsvc[IN] Pointer to data provider instance (optional)
Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::setRoot ( std::string  root_name,
DataObject pObject 
)
pure virtual

Initialize data store for new event by giving new event path.

Implicitly this clears the entire data store.

Parameters
root_name[IN] String containing root path name
pObject[IN] Pointer to root node object
Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::setRoot ( std::string  root_path,
IOpaqueAddress pRootAddr 
)
pure virtual

Initialize data store for new event by giving new event path.

Implicitly this clears the entire data store.

Parameters
root_name[IN] String containing root path name
pRootAddr[IN] Pointer to opaque root node address
Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::traverseSubTree ( boost::string_ref  sub_path,
IDataStoreAgent pAgent 
)
pure virtual

Analyse by traversing all data objects below the sub tree identified by its full path name.

Parameters
sub_path[IN] Path to sub-tree node.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::traverseSubTree ( DataObject pObject,
IDataStoreAgent pAgent 
)
pure virtual

Analyse by traversing all data objects below the sub tree identified by the object.

The object itself is removed as well.

Parameters
pObject[IN] Pointer to object
pAgent[IN] Pointer to the datastore agent traversing the store
Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::traverseTree ( IDataStoreAgent pAgent)
pure virtual

Analyse by traversing all data objects in the data store.

Returns
Status code indicating success or failure
virtual StatusCode IDataManagerSvc::unregisterAddress ( boost::string_ref  fullPath)
pure virtual

Unregister object address from the data store.

The object is identified by full path name.

Parameters
fullPath[IN] Path name of the object.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::unregisterAddress ( DataObject pParent,
boost::string_ref  objPath 
)
pure virtual

Unregister object address from the data store.

The object is identified by parent object and the path of the object relative to the parent.

Parameters
pParent[IN] Pointer to parent object.
objPath[IN] Path name of the object relative to the parent.
Returns
Status code indicating success or failure.
virtual StatusCode IDataManagerSvc::unregisterAddress ( IRegistry pParent,
boost::string_ref  objPath 
)
pure virtual

Unregister object address from the data store.

The object is identified by parent object and the path of the object relative to the parent.

Parameters
pParent[IN] Pointer to parent object.
objPath[IN] Path name of the object relative to the parent.
Returns
Status code indicating success or failure.

The documentation for this class was generated from the following file: