| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

IConversionSvc Class Reference

#include <GaudiKernel/IConversionSvc.h>

Inheritance diagram for IConversionSvc:

[legend]
Collaboration diagram for IConversionSvc:
[legend]
List of all members.

Public Types

 CONVERSIONSVC_NO_ERROR = ICONVERSIONSVC_LAST_ERROR+1
 Success.
 NO_CONVERTER
 No proper converter is availible to the service.
enum  Status { CONVERSIONSVC_NO_ERROR = ICONVERSIONSVC_LAST_ERROR+1, NO_CONVERTER }
 Status code definitions. More...
 INVALID_ADDRESS = IInterface::LAST_ERROR+1
 Invalid address information.
 INVALID_OBJECT
 Object to be converted is invalid.
 NO_MEMORY
 No more memory availible.
 BAD_STORAGE_TYPE
 Invalid storage type.
 NO_SOURCE_OBJECT
 Error retrieving source data from source store.
 ICONVERSIONSVC_LAST_ERROR
 Last entry.
 SUCCESS = 1
 Normal successful completion.
 NO_INTERFACE
 Requested interface is not available.
 VERSMISMATCH
 Requested interface version is incompatible.
 LAST_ERROR
 Last error.

Public Member Functions

virtual StatusCode addConverter (IConverter *pConverter)=0
 Add converter object to conversion service.
virtual StatusCode addConverter (const CLID &clid)=0
 Add converter object to conversion service.
virtual StatusCode removeConverter (const CLID &clid)=0
 Remove converter object from conversion service (if present).
virtual IConverterconverter (const CLID &clid)=0
 Retrieve converter from list.
virtual StatusCode connectOutput (const std::string &outputFile)=0
 Connect the output file to the service.
virtual StatusCode connectOutput (const std::string &outputFile, const std::string &openMode)=0
 Connect the output file to the service with open mode.
virtual StatusCode commitOutput (const std::string &outputFile, bool do_commit)=0
 Commit pending output.
virtual StatusCode initialize ()=0
 Initialize the converter.
virtual StatusCode finalize ()=0
 Terminate the converter.
virtual const CLIDobjType () const =0
 Retrieve the class type of objects the converter produces.
virtual long repSvcType () const =0
 Retrieve the class type of the data store the converter uses.
virtual StatusCode setDataProvider (IDataProviderSvc *pService)=0
 Set Data provider service.
virtual IDataProviderSvcdataProvider () const =0
 Get Data provider service.
virtual StatusCode setConversionSvc (IConversionSvc *pService)=0
 Set conversion service the converter is connected to.
virtual IConversionSvcconversionSvc () const =0
 Get conversion service the converter is connected to.
virtual StatusCode setAddressCreator (IAddressCreator *creator)=0
 Set address creator facility.
virtual IAddressCreatoraddressCreator () const =0
 Get address creation interface needed to resolve links between objects.
virtual StatusCode createObj (IOpaqueAddress *pAddress, DataObject *&refpObject)=0
 Create the transient representation of an object.
virtual StatusCode fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)=0
 Resolve the references of the created transient object.
virtual StatusCode updateObj (IOpaqueAddress *pAddress, DataObject *refpObject)=0
 Update the transient object from the other representation.
virtual StatusCode updateObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)=0
 Update the references of an updated transient object.
virtual StatusCode createRep (DataObject *pObject, IOpaqueAddress *&refpAddress)=0
 Convert the transient object to the requested representation.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)=0
 Resolve the references of the converted object.
virtual StatusCode updateRep (IOpaqueAddress *pAddress, DataObject *pObject)=0
 Update the converted representation of a transient object.
virtual StatusCode updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)=0
 Update the references of an already converted object.
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvInterface)=0
 Query interfaces of Interface.
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance.
virtual unsigned long release ()=0
 Release Interface instance.

Static Public Member Functions

static const InterfaceIDinterfaceID ()
 Retrieve interface ID.

Detailed Description

The conversion service interface allows to:

Author:
Markus Frank
Version:
1.2

Definition at line 42 of file IConversionSvc.h.


Member Enumeration Documentation

enum IConversionSvc::Status

Status code definitions.

Enumerator:
CONVERSIONSVC_NO_ERROR  Success.
NO_CONVERTER  No proper converter is availible to the service.

Reimplemented from IConverter.

Definition at line 99 of file IConversionSvc.h.


Member Function Documentation

static const InterfaceID& IConversionSvc::interfaceID (  )  [inline, static]

Retrieve interface ID.

Reimplemented from IConverter.

Definition at line 45 of file IConversionSvc.h.

00045 { return IID_IConversionSvc; }

virtual StatusCode IConversionSvc::addConverter ( IConverter pConverter  )  [pure virtual]

Add converter object to conversion service.

Parameters:
pConverter Pointer to converter object
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual StatusCode IConversionSvc::addConverter ( const CLID clid  )  [pure virtual]

Add converter object to conversion service.

Parameters:
clid Class ID of the converter needed
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual StatusCode IConversionSvc::removeConverter ( const CLID clid  )  [pure virtual]

Remove converter object from conversion service (if present).

The converter is defined by the class type of the objects created.

Parameters:
clid Class ID of the converter
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual IConverter* IConversionSvc::converter ( const CLID clid  )  [pure virtual]

Retrieve converter from list.

Parameters:
clid the clid of the converter
Returns:
the converter corresponding to clid or 0 if non wasa found

Implemented in ConversionSvc.

virtual StatusCode IConversionSvc::connectOutput ( const std::string &  outputFile  )  [pure virtual]

Connect the output file to the service.

Parameters:
outputFile String containig output file
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual StatusCode IConversionSvc::connectOutput ( const std::string &  outputFile,
const std::string &  openMode 
) [pure virtual]

Connect the output file to the service with open mode.

Parameters:
outputFile String containig output file
openMode String containig opening mode of the output file
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual StatusCode IConversionSvc::commitOutput ( const std::string &  outputFile,
bool  do_commit 
) [pure virtual]

Commit pending output.

Parameters:
outputFile String containig output file
do_commit if true commit the output and flush eventually pending items to the database if false, discard pending buffers. Note: The possibility to commit or rollback depends on the database technology used!
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc.

virtual StatusCode IConverter::initialize (  )  [pure virtual, inherited]

Initialize the converter.

Returns:
Status code indicating success or failure
Exceptions:
exception (STL standard) in case of fatal errors

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::finalize (  )  [pure virtual, inherited]

Terminate the converter.

Returns:
Status code indicating success or failure
Exceptions:
exception (STL standard) in case of fatal errors

Implemented in ConversionSvc, and Converter.

virtual const CLID& IConverter::objType (  )  const [pure virtual, inherited]

Retrieve the class type of objects the converter produces.

Returns:
Class type of the created object.

Implemented in ConversionSvc, and Converter.

virtual long IConverter::repSvcType (  )  const [pure virtual, inherited]

Retrieve the class type of the data store the converter uses.

Returns:
Class type information about the source data store type the converter will use to retrieve the information.

Implemented in ConversionSvc.

virtual StatusCode IConverter::setDataProvider ( IDataProviderSvc pService  )  [pure virtual, inherited]

Set Data provider service.

Returns:
Status code indicating success or failure
Parameters:
pService Pointer to data provider service

Implemented in ConversionSvc, and Converter.

virtual IDataProviderSvc* IConverter::dataProvider (  )  const [pure virtual, inherited]

Get Data provider service.

Returns:
Pointer to data provider service

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::setConversionSvc ( IConversionSvc pService  )  [pure virtual, inherited]

Set conversion service the converter is connected to.

Returns:
Status code indicating success or failure
Parameters:
pService Pointer to IConversionSvc interface

Implemented in ConversionSvc, and Converter.

virtual IConversionSvc* IConverter::conversionSvc (  )  const [pure virtual, inherited]

Get conversion service the converter is connected to.

Returns:
Pointer to IConversionSvc interface

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::setAddressCreator ( IAddressCreator creator  )  [pure virtual, inherited]

Set address creator facility.

Parameters:
creator Reference to address creator interface
Returns:
Status code indicating success or failure.

Implemented in ConversionSvc, and Converter.

virtual IAddressCreator* IConverter::addressCreator (  )  const [pure virtual, inherited]

Get address creation interface needed to resolve links between objects.

Returns:
Pointer to IAddressCreator interface

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::createObj ( IOpaqueAddress pAddress,
DataObject *&  refpObject 
) [pure virtual, inherited]

Create the transient representation of an object.

The transient representation is created by loading the persistent object using the source information contained in the address.

Returns:
Status code indicating success or failure
Parameters:
pAddress Opaque address information to retrieve the requested object from the store in order to produce the transient object.
refpObject Reference to location of pointer of the created object.

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::fillObjRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [pure virtual, inherited]

Resolve the references of the created transient object.

After the object creation references of the objects pointing to objects outside its scope will have to be filled. The actual objects will not be loaded, but the recipe to load them will be present.

Returns:
Status code indicating success or failure
Parameters:
pAddress Opaque address information to retrieve the requested object from the store.
pObject Pointer to location of the object

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::updateObj ( IOpaqueAddress pAddress,
DataObject refpObject 
) [pure virtual, inherited]

Update the transient object from the other representation.

The transient representation will be updated by loading the persistent object using the source information contained in the address and then refill transient data.

Returns:
Status code indicating success or failure
Parameters:
pAddress Opaque address information to retrieve the requested object from the store.
pObject Pointer to the object to be updated.

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::updateObjRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [pure virtual, inherited]

Update the references of an updated transient object.

After the object was updated alse the references of the objects pointing to objects outside its scope will have to be filled. The actual pointers to objects will only be filled if already present. Otherwise only the recipe to load them will be present.

Returns:
Status code indicating success or failure
Parameters:
pAddress Opaque address information to retrieve the requested object from the store.
pObject Pointer to location of the object

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::createRep ( DataObject pObject,
IOpaqueAddress *&  refpAddress 
) [pure virtual, inherited]

Convert the transient object to the requested representation.

e.g. conversion to persistent objects.

Returns:
Status code indicating success or failure
Parameters:
pObject Pointer to location of the object
refpAddress Reference to location of pointer with the object address.

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::fillRepRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [pure virtual, inherited]

Resolve the references of the converted object.

After the requested representation was created the references in this representation must be resolved.

Returns:
Status code indicating success or failure
Parameters:
pObject Pointer to location of the object

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::updateRep ( IOpaqueAddress pAddress,
DataObject pObject 
) [pure virtual, inherited]

Update the converted representation of a transient object.

Returns:
Status code indicating success or failure
Parameters:
pObject Pointer to location of the object
refpAddress Reference to location of pointer with the object address.

Implemented in ConversionSvc, and Converter.

virtual StatusCode IConverter::updateRepRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [pure virtual, inherited]

Update the references of an already converted object.

The object must be retrieved before it can be updated.

Returns:
Status code indicating success or failure
Parameters:
pAddress Pointer to location of object address with the store.
pObject Pointer to location of the object

Implemented in ConversionSvc, and Converter.

virtual StatusCode IInterface::queryInterface ( const InterfaceID riid,
void **  ppvInterface 
) [pure virtual, inherited]

Query interfaces of Interface.

Parameters:
riid ID of Interface to be retrieved
ppvInterface Pointer to Location for interface pointer

Implemented in Algorithm, AlgTool, Auditor, ConversionSvc, Converter, DataSvc, EventSelectorDataStream, MinimalEventLoopMgr, PropertyMgr, SelectStatement, and Service.

virtual unsigned long IInterface::addRef (  )  [pure virtual, inherited]

Increment the reference count of Interface instance.

Implemented in Algorithm, AlgTool, Auditor, Converter, EventSelectorDataStream, IFactory, PropertyMgr, SelectStatement, and Service.

virtual unsigned long IInterface::release (  )  [pure virtual, inherited]

Release Interface instance.

Implemented in Algorithm, AlgTool, Auditor, Converter, EventSelectorDataStream, IFactory, PropertyMgr, SelectStatement, and Service.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:57:08 2011 for GaudiKernel by doxygen 1.4.7