class IDataProviderSvc : public IInterface

IDataProviderSvc interface definition

Inheritance:


Public

Interface calls
virtual StatusCode registerObject(const string& node_path, IDataObject* pObject) throw(exception)
Register object with the data store
virtual StatusCode registerObject(IDataObject* pNode, IDataObject* pObject) throw(exception)
Register object with the data store
virtual StatusCode unregisterObject(const string& path) throw(exception)
Unregister object from the data store
virtual StatusCode unregisterObject(IDataObject* pObject) throw(exception)
Unregister object from the data store
virtual StatusCode retrieveObject(const string& path, IDataObject*& pObject) throw(exception)
Retrieve object identified by its full path from the data store
virtual StatusCode retrieveObject(IDataObject* pNode, const string& path, IDataObject*& pObject) throw(exception)
Retrieve object from data store
virtual StatusCode findObject(const string& path, IDataObject*& pObject) throw(exception)
Find object identified by its full path in the data store
virtual StatusCode findObject(IDataObject* pNode, const string& path, IDataObject*& pObject) throw(exception)
Find object identified by its full path in the data store
Interface Specific stuff
enum Status
Status code definitions
NO_ERROR
Success
DOUBL_OBJ_PATH
The path for this objects is already in use
INVALID_OBJ_PATH
Invalid path from root to object request failed.
INVALID_ROOT
Invalid root path object cannot be retrieved or stored.

Documentation

IDataProviderSvc interface definition.

System: The LHCb Offline System

Package: DataProviderSvc

The data provider interface allows to:

Dependencies: History:
+---------+----------------------------------------------+---------+
|    Date |                 Comment                      | Who     |
+---------+----------------------------------------------+---------+
| 3/11/98 | Initial version                              | M.Frank |
+---------+----------------------------------------------+---------+
Interface calls

virtual StatusCode registerObject(const string& node_path, IDataObject* pObject) throw(exception)
Register object with the data store. Connect the object identified by its pointer to the node object identified by its path.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
node_path - Path to parent node of the object.
pObject - Pointer to the object to be connected.

virtual StatusCode registerObject(IDataObject* pNode, IDataObject* pObject) throw(exception)
Register object with the data store. Connect the object identified by its pointer to the node object identified by its pointer.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
pNode - Pointer to parent node of the object.
pObject - Pointer to the object to be connected.

virtual StatusCode unregisterObject(const string& path) throw(exception)
Unregister object from the data store. The object and all depending object will be deleted. The object is identified by full path name.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
path - Path name of the object.

virtual StatusCode unregisterObject(IDataObject* pObject) throw(exception)
Unregister object from the data store. The object and all depending object will be deleted. The object is identified by its pointer. The object must previously have been registered with the data store.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
pObject - pointer to the object.

virtual StatusCode retrieveObject(const string& path, IDataObject*& pObject) throw(exception)
Retrieve object identified by its full path from the data store. The result will be returned in the second argument. In case the object is not present it will be loaded and converted if possible.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
path - Path name of the object.
pObject - Pointer to the object to be connected.

virtual StatusCode retrieveObject(IDataObject* pNode, const string& path, IDataObject*& pObject) throw(exception)
Retrieve object from data store. The object to be retrieved is identified by the pointer of the node the object is connected to and the relative path with respect to the node. In case the object is not present it will be loaded and converted if possible.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
pNode - Pointer to parent node of the object.
path - Relative path name of the object.
pObject - Pointer to the object to be connected.

virtual StatusCode findObject(const string& path, IDataObject*& pObject) throw(exception)
Find object identified by its full path in the data store. The result will be returned in the second argument. In case the object is not present the pointer will be set to NULL.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
path - Path name of the object.
pObject - Pointer to the object to be connected.

virtual StatusCode findObject(IDataObject* pNode, const string& path, IDataObject*& pObject) throw(exception)
Find object identified by its full path in the data store. The result will be returned in the second argument. In case the object is not present the pointer will be set to NULL.
Throws:
exception (Standard STL) on occurence of fatal errors.
Returns:
Status code indicating success or failure.
Parameters:
pNode - Pointer to parent node of the object.
path - Relative path name of the object.
pObject - Pointer to the object to be connected.

Interface Specific stuff

enum Status
Status code definitions

NO_ERROR
Success

DOUBL_OBJ_PATH
The path for this objects is already in use

INVALID_OBJ_PATH
Invalid path from root to object request failed.

INVALID_ROOT
Invalid root path object cannot be retrieved or stored.


This class has no child classes.
Author:
Markus Frank
Version:
1.0


The New Software