Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ConversionSvc Class Reference

Base class for all conversion services. More...

#include <GaudiKernel/ConversionSvc.h>

Inheritance diagram for ConversionSvc:

Service IConversionSvc IAddressCreator IService IProperty IInterface IInterface IInterface IInterface List of all members.

Public Types

typedef std::vector<WorkerEntryWorkers

Public Methods

virtual StatusCode initialize ()
 Initialize the service. More...

virtual StatusCode finalize ()
 stop the service. More...

virtual unsigned char repSvcType () const
 Retrieve the class type of the data store the converter uses. More...

virtual StatusCode updateServiceState (IOpaqueAddress* pAddress)
 Update state of the service. More...

virtual StatusCode createObj (IOpaqueAddress* pAddress, DataObject*& refpObject)
 Create a transient representation from another representation of this object. More...

virtual StatusCode updateObj (IOpaqueAddress* pAddress, DataObject* pObject)
 Update a transient representation from another representation of this object. More...

virtual StatusCode updateReps (IDataSelector* pSelector)
 Update the original representation of a collection of transient objects. More...

virtual StatusCode createReps (IDataSelector* pSelector)
 Convert a collection of transient data objects into another representation. More...

virtual StatusCode setStore (IDataProviderSvc* pStore)
 Define transient dat store. More...

virtual StatusCode addConverter (IConverter* pConverter)
 Add converter object to conversion service. More...

virtual StatusCode addConverter (const ICnvFactory& refFactory)
 Add converter object to conversion service. The converter will immediately be instantiated using the factory and initialized. More...

virtual StatusCode removeConverter (const CLID& clid)
 Remove converter object from conversion service (if present). More...

virtual StatusCode connectOutput (const std::string& outputFile)
 Connect the output file to the service. More...

virtual StatusCode createAddress (const GenericLinkBase & link, const std::string& dbName, const std::string& contName, const std::string& objName, IOpaqueAddress*& refpAddress)
 Create a Generic address using explicit arguments to identify a single object. More...

virtual StatusCode createAddress (unsigned char type, const CLID& classId, const std::string& dbName, const std::string& contName, int seqId, IOpaqueAddress*& refpAddress)
 Create a Generic address using explicit arguments to identify a single object. More...

virtual StatusCode setAddressCreator (IAddressCreator* creator)
 Set address creator facility. More...

 ConversionSvc (const std::string& name, ISvcLocator* svc, unsigned char type)
 Standard Constructor. More...

virtual StatusCode queryInterface (const IID& riid, void** ppvInterface)
 Query interface. More...


Protected Types

typedef std::vector<ContextEntryContext

Protected Methods

virtual ~ConversionSvc ()
 Standard Destructor. More...

virtual IConverterconverter (const CLID& wanted_class)
 Retrieve converter from list. More...

virtual const ICnvFactoryfindCnvFactory (const CLID& wanted)
 Locate converter factory. More...

virtual StatusCode initializeConverter (IConverter* cnv)
 Initialize new converter. More...

virtual IConvertercreateConverter (const ICnvFactory& fac)
 Create new Converter using factory. More...

virtual IAddressCreatoraddressCreator ()
 Retrieve address creation interface. More...

virtual void setAddressFactory (const IAddrFactory* pAddrFactory)
 Set the address factory for this conversion service TYPE. More...

ICnvManagercnvManager ()
 Retrieve converter from list. More...


Protected Attributes

IDataProviderSvcm_dataSvc
 Pointer to data provider service. More...

ICnvManagerm_cnvManager
 Pointer to data provider service. More...

IAddressCreatorm_addressCreator
 Pointer to the address creation service interface. More...

unsigned char m_type
 Conversion service type. More...

const IAddrFactorym_addressFactory
 Pointer to address creation factory for the convsersion type. More...

Workersm_workers
 List of conversion workers. More...


Friends

class  SvcFactory2< ConversionSvc,unsigned char >

Detailed Description

Base class for all conversion services.

It manages a set of Converters that are specialized for conversions of specific objects.

Author(s):
Markus Frank
Version:
1.0

Definition at line 27 of file ConversionSvc.h.


Member Typedef Documentation

typedef std::vector<ContextEntry> ConversionSvc::Context [protected]
 

Definition at line 60 of file ConversionSvc.h.

typedef std::vector<WorkerEntry> ConversionSvc::Workers
 

Definition at line 87 of file ConversionSvc.h.

Referenced by ConversionSvc().


Constructor & Destructor Documentation

ConversionSvc::ConversionSvc ( const std::string & name,
ISvcLocator * svc,
unsigned char type )
 

Standard Constructor.

Definition at line 358 of file ConversionSvc.cpp.

ConversionSvc::~ConversionSvc ( ) [protected, virtual]
 

Standard Destructor.

Definition at line 369 of file ConversionSvc.cpp.


Member Function Documentation

StatusCode ConversionSvc::addConverter ( const ICnvFactory & refFactory ) [virtual]
 

Add converter object to conversion service. The converter will immediately be instantiated using the factory and initialized.

Reimplemented from IConversionSvc.

Definition at line 268 of file ConversionSvc.cpp.

StatusCode ConversionSvc::addConverter ( IConverter * pConverter ) [virtual]
 

Add converter object to conversion service.

Reimplemented from IConversionSvc.

Definition at line 258 of file ConversionSvc.cpp.

Referenced by addConverter(), and converter().

IAddressCreator * ConversionSvc::addressCreator ( ) [inline, protected, virtual]
 

Retrieve address creation interface.

Definition at line 183 of file ConversionSvc.h.

ICnvManager * ConversionSvc::cnvManager ( ) [inline, protected]
 

Retrieve converter from list.

Definition at line 192 of file ConversionSvc.h.

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

Connect the output file to the service.

Reimplemented from IConversionSvc.

Definition at line 318 of file ConversionSvc.cpp.

IConverter * ConversionSvc::converter ( const CLID & wanted ) [protected, virtual]
 

Retrieve converter from list.

Definition at line 217 of file ConversionSvc.cpp.

Referenced by createObj(), createReps(), updateObj(), and updateReps().

StatusCode ConversionSvc::createAddress ( unsigned char type,
const CLID & classId,
const std::string & dbName,
const std::string & contName,
int seqId,
IOpaqueAddress *& refpAddress ) [virtual]
 

Create a Generic address using explicit arguments to identify a single object.

Reimplemented from IAddressCreator.

Definition at line 329 of file ConversionSvc.cpp.

StatusCode ConversionSvc::createAddress ( const GenericLinkBase & link,
const std::string & dbName,
const std::string & contName,
const std::string & objName,
IOpaqueAddress *& refpAddress ) [virtual]
 

Create a Generic address using explicit arguments to identify a single object.

Reimplemented from IAddressCreator.

Definition at line 344 of file ConversionSvc.cpp.

IConverter * ConversionSvc::createConverter ( const ICnvFactory & fac ) [protected, virtual]
 

Create new Converter using factory.

Definition at line 253 of file ConversionSvc.cpp.

Referenced by addConverter().

StatusCode ConversionSvc::createObj ( IOpaqueAddress * pAddress,
DataObject *& refpObject ) [virtual]
 

Create a transient representation from another representation of this object.

Reimplemented from IConversionSvc.

Definition at line 61 of file ConversionSvc.cpp.

StatusCode ConversionSvc::createReps ( IDataSelector * pSelector ) [virtual]
 

Convert a collection of transient data objects into another representation.

Reimplemented from IConversionSvc.

Definition at line 161 of file ConversionSvc.cpp.

StatusCode ConversionSvc::finalize ( ) [virtual]
 

stop the service.

Reimplemented from Service.

Definition at line 50 of file ConversionSvc.cpp.

const ICnvFactory * ConversionSvc::findCnvFactory ( const CLID & wanted ) [protected, virtual]
 

Locate converter factory.

Definition at line 212 of file ConversionSvc.cpp.

Referenced by converter().

StatusCode ConversionSvc::initialize ( ) [virtual]
 

Initialize the service.

Reimplemented from Service.

Definition at line 38 of file ConversionSvc.cpp.

StatusCode ConversionSvc::initializeConverter ( IConverter * cnv ) [protected, virtual]
 

Initialize new converter.

Definition at line 245 of file ConversionSvc.cpp.

Referenced by addConverter().

StatusCode ConversionSvc::queryInterface ( const IID & riid,
void ** ppvInterface ) [virtual]
 

Query interface.

Reimplemented from Service.

Definition at line 297 of file ConversionSvc.cpp.

StatusCode ConversionSvc::removeConverter ( const CLID & clid ) [virtual]
 

Remove converter object from conversion service (if present).

Reimplemented from IConversionSvc.

Definition at line 279 of file ConversionSvc.cpp.

Referenced by addConverter().

unsigned char ConversionSvc::repSvcType ( ) const [virtual]
 

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

Reimplemented from IConversionSvc.

Definition at line 313 of file ConversionSvc.cpp.

Referenced by addConverter(), createAddress(), and updateReps().

StatusCode ConversionSvc::setAddressCreator ( IAddressCreator * creator ) [virtual]
 

Set address creator facility.

Reimplemented from IConversionSvc.

Definition at line 323 of file ConversionSvc.cpp.

void ConversionSvc::setAddressFactory ( const IAddrFactory * pAddrFactory ) [inline, protected, virtual]
 

Set the address factory for this conversion service TYPE.

Definition at line 188 of file ConversionSvc.h.

StatusCode ConversionSvc::setStore ( IDataProviderSvc * pDataSvc ) [virtual]
 

Define transient dat store.

Reimplemented from IConversionSvc.

Definition at line 237 of file ConversionSvc.cpp.

StatusCode ConversionSvc::updateObj ( IOpaqueAddress * pAddress,
DataObject * pObject ) [virtual]
 

Update a transient representation from another representation of this object.

Reimplemented from IConversionSvc.

Definition at line 88 of file ConversionSvc.cpp.

StatusCode ConversionSvc::updateReps ( IDataSelector * pSelector ) [virtual]
 

Update the original representation of a collection of transient objects.

Reimplemented from IConversionSvc.

Definition at line 111 of file ConversionSvc.cpp.

StatusCode ConversionSvc::updateServiceState ( IOpaqueAddress * pAddress ) [virtual]
 

Update state of the service.

Definition at line 56 of file ConversionSvc.cpp.

Referenced by createObj(), and updateObj().


Friends And Related Function Documentation

class SvcFactory2 [friend]
 

Definition at line 31 of file ConversionSvc.h.


Member Data Documentation

IAddressCreator * ConversionSvc::m_addressCreator [protected]
 

Pointer to the address creation service interface.

Definition at line 202 of file ConversionSvc.h.

const IAddrFactory * ConversionSvc::m_addressFactory [protected]
 

Pointer to address creation factory for the convsersion type.

Definition at line 206 of file ConversionSvc.h.

ICnvManager * ConversionSvc::m_cnvManager [protected]
 

Pointer to data provider service.

Definition at line 200 of file ConversionSvc.h.

IDataProviderSvc * ConversionSvc::m_dataSvc [protected]
 

Pointer to data provider service.

Definition at line 198 of file ConversionSvc.h.

unsigned char ConversionSvc::m_type [protected]
 

Conversion service type.

Definition at line 204 of file ConversionSvc.h.

Workers * ConversionSvc::m_workers [protected]
 

List of conversion workers.

Definition at line 208 of file ConversionSvc.h.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:22:09 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000