The Gaudi Framework  v29r0 (ff2e7097)
IDataManagerSvc Class Referenceabstract

#include <GaudiKernel/IDataManagerSvc.h>

Inheritance diagram for IDataManagerSvc:
Collaboration diagram for IDataManagerSvc:

Public Member Functions

 DeclareInterfaceID (IDataManagerSvc, 3, 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 (const std::string &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 (const std::string &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 (const std::string &fullPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode registerAddress (DataObject *parentObj, const std::string &objectPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode registerAddress (IRegistry *parentObj, const std::string &objectPath, IOpaqueAddress *pAddress)=0
 Register object address with the data store. More...
 
virtual StatusCode unregisterAddress (const std::string &fullPath)=0
 Unregister object address from the data store. More...
 
virtual StatusCode unregisterAddress (DataObject *pParent, const std::string &objPath)=0
 Unregister object address from the data store. More...
 
virtual StatusCode unregisterAddress (IRegistry *pParent, const std::string &objPath)=0
 Unregister object address from the data store. More...
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function More...
 
virtual std::vector< std::stringgetInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release ()=0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()=default
 Virtual destructor. More...
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
 Return status. More...
 
using iid = Gaudi::InterfaceId< IInterface, 0, 0 >
 Interface ID. More...
 
using ext_iids = Gaudi::interface_list< iid >
 Extra interfaces. More...
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. 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 45 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 ( const std::string 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 ( const std::string 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,
const std::string 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,
const std::string 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 ( const std::string 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 ( const std::string 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,
const std::string 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,
const std::string 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: