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

In This Package:

Converter Class Reference

Converter base class. More...

#include <GaudiKernel/Converter.h>

Inheritance diagram for Converter:

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

Public Types

 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.
enum  Status {
  INVALID_ADDRESS = IInterface::LAST_ERROR+1, INVALID_OBJECT, NO_MEMORY, BAD_STORAGE_TYPE,
  NO_SOURCE_OBJECT, ICONVERSIONSVC_LAST_ERROR
}
 Status code. More...
 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 queryInterface (const InterfaceID &riid, void **ppvInterface)
 Query interfaces of Interface.
virtual unsigned long addRef ()
 Reference Interface instance.
virtual unsigned long release ()
 Release Interface instance.
virtual StatusCode initialize ()
 Initialize the converter.
virtual StatusCode finalize ()
 Initialize the converter.
virtual StatusCode setDataProvider (IDataProviderSvc *svc)
 Set Data provider service.
virtual IDataProviderSvcdataProvider () const
 Get Data provider service.
virtual StatusCode setConversionSvc (IConversionSvc *svc)
 Set conversion service the converter is connected to.
virtual IConversionSvcconversionSvc () const
 Get conversion service the converter is connected to.
virtual StatusCode setAddressCreator (IAddressCreator *creator)
 Set address creator facility.
virtual IAddressCreatoraddressCreator () const
 Retrieve address creator facility.
virtual const CLIDobjType () const
 Retrieve the class type of objects the converter produces.
virtual long i_repSvcType () const
 Retrieve the class type of the data store the converter uses.
virtual StatusCode createObj (IOpaqueAddress *pAddress, DataObject *&refpObject)
 Create the transient representation of an object.
virtual StatusCode fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the created transient object.
virtual StatusCode updateObj (IOpaqueAddress *pAddress, DataObject *refpObject)
 Update the transient object from the other representation.
virtual StatusCode updateObjRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the references of an updated transient object.
virtual StatusCode createRep (DataObject *pObject, IOpaqueAddress *&refpAddress)
 Convert the transient object to the requested representation.
virtual StatusCode fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Resolve the references of the converted object.
virtual StatusCode updateRep (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the converted representation of a transient object.
virtual StatusCode updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject)
 Update the references of an already converted object.
 Converter (long storage_type, const CLID &class_type, ISvcLocator *svc)
 Standard Constructor.
template<class T>
StatusCode service (const std::string &name, T *&psvc, bool createIf=false) const
 Access a service by name, creating it if it doesn't already exist.
template<class T>
StatusCode service (const std::string &type, const std::string &name, T *&psvc) const
 Access a service by name, type creating it if it doesn't already exist.
virtual long repSvcType () const =0
 Retrieve the class type of the data store the converter uses.

Static Public Member Functions

static const InterfaceIDinterfaceID ()
 Retrieve interface ID.

Protected Member Functions

virtual ~Converter ()
 Standard Destructor.
ISvcLocatorserviceLocator () const
 Retrieve pointer to service locator.
IMessageSvcmsgSvc () const
 Retrieve pointer to message service.
IMessageSvcmessageService () const
IDataManagerSvcdataManager () const
 Get Data Manager service.

Private Member Functions

StatusCode service_i (const std::string &svcName, bool createIf, const InterfaceID &iid, void **ppSvc) const
 implementation of service method
StatusCode service_i (const std::string &svcType, const std::string &svcName, const InterfaceID &iid, void **ppSvc) const

Private Attributes

unsigned long m_refCount
 Reference counter.
long m_storageType
 Storage type.
const CLID m_classType
 Class type the converter can handle.
IAddressCreatorm_addressCreator
 Pointer to the address creation service interface.
IDataProviderSvcm_dataProvider
 Pointer to data provider service.
IDataManagerSvcm_dataManager
 Pointer to data manager service.
IConversionSvcm_conversionSvc
 Pointer to the connected conversion service.
ISvcLocatorm_svcLocator
 Service Locator reference.
IMessageSvcm_messageSvc
 MessageSvc reference.

Detailed Description

Converter base class.

See interface for detailed description, arguments and return values

Author:
Markus Frank
Version:
1.0

Definition at line 25 of file Converter.h.


Member Enumeration Documentation

enum IConverter::Status [inherited]

Status code.

Enumerator:
INVALID_ADDRESS  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.

Reimplemented from IInterface.

Reimplemented in IConversionSvc.

Definition at line 204 of file IConverter.h.


Constructor & Destructor Documentation

Converter::Converter ( long  storage_type,
const CLID class_type,
ISvcLocator svc 
)

Standard Constructor.

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

Standard Destructor.


Member Function Documentation

virtual StatusCode Converter::queryInterface ( const InterfaceID riid,
void **  ppvInterface 
) [virtual]

Query interfaces of Interface.

Implements IInterface.

virtual unsigned long Converter::addRef (  )  [virtual]

Reference Interface instance.

Implements IInterface.

virtual unsigned long Converter::release (  )  [virtual]

Release Interface instance.

Implements IInterface.

virtual StatusCode Converter::initialize (  )  [virtual]

Initialize the converter.

Implements IConverter.

virtual StatusCode Converter::finalize (  )  [virtual]

Initialize the converter.

Implements IConverter.

virtual StatusCode Converter::setDataProvider ( IDataProviderSvc svc  )  [virtual]

Set Data provider service.

Implements IConverter.

virtual IDataProviderSvc* Converter::dataProvider (  )  const [virtual]

Get Data provider service.

Implements IConverter.

virtual StatusCode Converter::setConversionSvc ( IConversionSvc svc  )  [virtual]

Set conversion service the converter is connected to.

Implements IConverter.

virtual IConversionSvc* Converter::conversionSvc (  )  const [virtual]

Get conversion service the converter is connected to.

Implements IConverter.

virtual StatusCode Converter::setAddressCreator ( IAddressCreator creator  )  [virtual]

Set address creator facility.

Implements IConverter.

virtual IAddressCreator* Converter::addressCreator (  )  const [virtual]

Retrieve address creator facility.

Implements IConverter.

virtual const CLID& Converter::objType (  )  const [virtual]

Retrieve the class type of objects the converter produces.

Implements IConverter.

virtual long Converter::i_repSvcType (  )  const [virtual]

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

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

Create the transient representation of an object.

Implements IConverter.

virtual StatusCode Converter::fillObjRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [virtual]

Resolve the references of the created transient object.

Implements IConverter.

virtual StatusCode Converter::updateObj ( IOpaqueAddress pAddress,
DataObject refpObject 
) [virtual]

Update the transient object from the other representation.

Implements IConverter.

virtual StatusCode Converter::updateObjRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [virtual]

Update the references of an updated transient object.

Implements IConverter.

virtual StatusCode Converter::createRep ( DataObject pObject,
IOpaqueAddress *&  refpAddress 
) [virtual]

Convert the transient object to the requested representation.

Implements IConverter.

virtual StatusCode Converter::fillRepRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [virtual]

Resolve the references of the converted object.

Implements IConverter.

virtual StatusCode Converter::updateRep ( IOpaqueAddress pAddress,
DataObject pObject 
) [virtual]

Update the converted representation of a transient object.

Implements IConverter.

virtual StatusCode Converter::updateRepRefs ( IOpaqueAddress pAddress,
DataObject pObject 
) [virtual]

Update the references of an already converted object.

Implements IConverter.

template<class T>
StatusCode Converter::service ( const std::string &  name,
T *&  psvc,
bool  createIf = false 
) const [inline]

Access a service by name, creating it if it doesn't already exist.

Definition at line 98 of file Converter.h.

00098                                                                                      {
00099     return service_i(name, createIf, T::interfaceID(), (void**)&psvc);
00100   }

template<class T>
StatusCode Converter::service ( const std::string &  type,
const std::string &  name,
T *&  psvc 
) const [inline]

Access a service by name, type creating it if it doesn't already exist.

Definition at line 104 of file Converter.h.

00104                                                                                     {
00105     return service_i(type, name, T::interfaceID(), (void**)&psvc);
00106   }

ISvcLocator* Converter::serviceLocator (  )  const [protected]

Retrieve pointer to service locator.

IMessageSvc* Converter::msgSvc (  )  const [protected]

Retrieve pointer to message service.

IMessageSvc* Converter::messageService (  )  const [protected]

IDataManagerSvc* Converter::dataManager (  )  const [protected]

Get Data Manager service.

StatusCode Converter::service_i ( const std::string &  svcName,
bool  createIf,
const InterfaceID iid,
void **  ppSvc 
) const [private]

implementation of service method

StatusCode Converter::service_i ( const std::string &  svcType,
const std::string &  svcName,
const InterfaceID iid,
void **  ppSvc 
) const [private]

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

Retrieve interface ID.

Reimplemented from IInterface.

Reimplemented in IConversionSvc.

Definition at line 64 of file IConverter.h.

00064 { return IID_IConverter; }

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.


Member Data Documentation

unsigned long Converter::m_refCount [private]

Reference counter.

Definition at line 125 of file Converter.h.

long Converter::m_storageType [private]

Storage type.

Definition at line 127 of file Converter.h.

const CLID Converter::m_classType [private]

Class type the converter can handle.

Definition at line 129 of file Converter.h.

IAddressCreator* Converter::m_addressCreator [private]

Pointer to the address creation service interface.

Definition at line 131 of file Converter.h.

IDataProviderSvc* Converter::m_dataProvider [private]

Pointer to data provider service.

Definition at line 133 of file Converter.h.

IDataManagerSvc* Converter::m_dataManager [private]

Pointer to data manager service.

Definition at line 135 of file Converter.h.

IConversionSvc* Converter::m_conversionSvc [private]

Pointer to the connected conversion service.

Definition at line 137 of file Converter.h.

ISvcLocator* Converter::m_svcLocator [private]

Service Locator reference.

Definition at line 139 of file Converter.h.

IMessageSvc* Converter::m_messageSvc [mutable, private]

MessageSvc reference.

Definition at line 141 of file Converter.h.


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:06 2011 for GaudiKernel by doxygen 1.4.7