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

PersistencySvc Class Reference

PersistencySvc class implementation definition. More...

#include <PersistencySvc.h>

Inheritance diagram for PersistencySvc:

Service IConversionSvc IPersistencySvc IAddressCreator DetPersistencySvc EvtPersistencySvc List of all members.

[NOHEADER]

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

 PersistencySvc (const std::string& name, ISvcLocator* svc)
 Standard Constructor. More...

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

IConversionSvcservice (unsigned char service_type)
 Retrieve conversion service from list. More...

IAddressCreatoraddressCreator (unsigned char service_type)
 Retrieve address creator from list. More...


Public Methods

IPersistencySvc Interface implementation
virtual StatusCode initialize ()
 Initialize the service. More...

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

unsigned char repSvcType () const
 Return default service type. 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...

virtual StatusCode addCnvService (IConversionSvc* service)
 Add a new Service. More...

virtual StatusCode removeCnvService (unsigned char type)
 Remove a Service. More...

virtual StatusCode setDefaultCnvService (unsigned char type)
 Set default service type. More...

virtual StatusCode getService (unsigned char service_type, IConversionSvc*& refpSvc)
 Retrieve conversion service identified by technology. More...

virtual StatusCode getService (const std::string& service_type, IConversionSvc*& refpSvc)
 Retrieve conversion service identified by technology. More...


Protected Types

typedef std::map<unsigned
char,ServiceEntry
Services

Protected Methods

void svcNamesHandler ( Property& theProp )
 Handlers for Service Names Property. More...

StatusCode decodeSvcNames ( )

Protected Attributes

unsigned char m_cnvDefType
 Default service type. More...

IDataProviderSvc* m_dataSvc
 Pointer to datma provider service. More...

Services m_cnvServices
 List of convermsion workers. More...

IConversionSvcm_cnvDefault
 Default output service. More...

StringArrayProperty m_svcNames
 Names of services to be requested from the service locator and added by default. More...

std::vector<IConversionSvc*> m_knownSvc

Friends

class  SvcFactory< PersistencySvc >

Detailed Description

PersistencySvc class implementation definition.

System: The LHCb Offline System

Package: PersistencySvc

Dependencies:

History:

    +---------+----------------------------------------------+---------+
    |    Date |                 Comment                      | Who     |
    +---------+----------------------------------------------+---------+
    | 3/11/98 | Initial version                              | M.Frank |
    +---------+----------------------------------------------+---------+
    
Author(s):
Markus Frank
Version:
1.0

Definition at line 52 of file PersistencySvc.h.


Member Typedef Documentation

typedef std::map<unsigned char,ServiceEntry> PersistencySvc::Services [protected]
 

Definition at line 85 of file PersistencySvc.h.


Constructor & Destructor Documentation

PersistencySvc::PersistencySvc ( const std::string & name,
ISvcLocator * svc ) [protected]
 

Standard Constructor.

Definition at line 406 of file PersistencySvc.cpp.

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

Standard Destructor.

Definition at line 417 of file PersistencySvc.cpp.


Member Function Documentation

StatusCode PersistencySvc::addCnvService ( IConversionSvc * service ) [virtual]
 

Add a new Service.

Definition at line 224 of file PersistencySvc.cpp.

Referenced by service().

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

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

Definition at line 196 of file PersistencySvc.cpp.

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

Add converter object to conversion service.

Definition at line 185 of file PersistencySvc.cpp.

IAddressCreator * PersistencySvc::addressCreator ( unsigned char service_type ) [protected]
 

Retrieve address creator from list.

Definition at line 160 of file PersistencySvc.cpp.

Referenced by createAddress().

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

Connect the output file to the service.

Definition at line 279 of file PersistencySvc.cpp.

StatusCode PersistencySvc::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.

Definition at line 299 of file PersistencySvc.cpp.

StatusCode PersistencySvc::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.

Definition at line 284 of file PersistencySvc.cpp.

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

Create a transient representation from another representation of this object.

Definition at line 76 of file PersistencySvc.cpp.

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

Convert a collection of transient data objects into another representation.

Definition at line 120 of file PersistencySvc.cpp.

StatusCode PersistencySvc::decodeSvcNames ( ) [protected]
 

Definition at line 379 of file PersistencySvc.cpp.

Referenced by initialize(), and svcNamesHandler().

StatusCode PersistencySvc::finalize ( ) [virtual]
 

stop the service.

Reimplemented in DetPersistencySvc, and EvtPersistencySvc.

Definition at line 67 of file PersistencySvc.cpp.

Referenced by EvtPersistencySvc::finalize(), and DetPersistencySvc::finalize().

StatusCode PersistencySvc::getService ( const std::string & service_type,
IConversionSvc *& refpSvc ) [virtual]
 

Retrieve conversion service identified by technology.

Definition at line 330 of file PersistencySvc.cpp.

StatusCode PersistencySvc::getService ( unsigned char service_type,
IConversionSvc *& refpSvc ) [virtual]
 

Retrieve conversion service identified by technology.

Definition at line 324 of file PersistencySvc.cpp.

Referenced by getService().

StatusCode PersistencySvc::initialize ( ) [virtual]
 

Initialize the service.

Reimplemented in DetPersistencySvc, and EvtPersistencySvc.

Definition at line 48 of file PersistencySvc.cpp.

Referenced by EvtPersistencySvc::initialize(), and DetPersistencySvc::initialize().

StatusCode PersistencySvc::queryInterface ( const IID & riid,
void ** ppvUnknown )
 

Query interface.

Definition at line 361 of file PersistencySvc.cpp.

StatusCode PersistencySvc::removeCnvService ( unsigned char type ) [virtual]
 

Remove a Service.

Definition at line 257 of file PersistencySvc.cpp.

Referenced by addCnvService().

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

Remove converter object from conversion service (if present).

Definition at line 211 of file PersistencySvc.cpp.

unsigned char PersistencySvc::repSvcType ( ) const
 

Return default service type.

Definition at line 268 of file PersistencySvc.cpp.

IConversionSvc * PersistencySvc::service ( unsigned char service_type ) [protected]
 

Retrieve conversion service from list.

Definition at line 130 of file PersistencySvc.cpp.

Referenced by addCnvService(), addConverter(), addressCreator(), createObj(), finalize(), getService(), removeCnvService(), removeConverter(), setDefaultCnvService(), setStore(), updateObj(), updateReps(), and ~PersistencySvc().

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

Set address creator facility.

Definition at line 315 of file PersistencySvc.cpp.

StatusCode PersistencySvc::setDefaultCnvService ( unsigned char type ) [virtual]
 

Set default service type.

Definition at line 273 of file PersistencySvc.cpp.

StatusCode PersistencySvc::setStore ( IDataProviderSvc * pStore ) [virtual]
 

Define transient dat store.

Definition at line 176 of file PersistencySvc.cpp.

void PersistencySvc::svcNamesHandler ( Property & theProp ) [protected]
 

Handlers for Service Names Property.

Definition at line 400 of file PersistencySvc.cpp.

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

Update a transient representation from another representation of this object.

Definition at line 90 of file PersistencySvc.cpp.

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

Update the original representation of a collection of transient objects.

Definition at line 104 of file PersistencySvc.cpp.


Friends And Related Function Documentation

class SvcFactory [friend]
 

Definition at line 57 of file PersistencySvc.h.


Member Data Documentation

unsigned char PersistencySvc::m_cnvDefType [protected]
 

Default service type.

Definition at line 201 of file PersistencySvc.h.

IConversionSvc * PersistencySvc::m_cnvDefault [protected]
 

Default output service.

Definition at line 207 of file PersistencySvc.h.

Services PersistencySvc::m_cnvServices [protected]
 

List of convermsion workers.

Definition at line 205 of file PersistencySvc.h.

IDataProviderSvc * PersistencySvc::m_dataSvc [protected]
 

Pointer to datma provider service.

Definition at line 203 of file PersistencySvc.h.

std::vector< IConversionSvc *> PersistencySvc::m_knownSvc [protected]
 

Definition at line 212 of file PersistencySvc.h.

StringArrayProperty PersistencySvc::m_svcNames [protected]
 

Names of services to be requested from the service locator and added by default.

Definition at line 211 of file PersistencySvc.h.


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