| The Gaudi Framework v32r1 (f65d50dc)

Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ConversionSvc Class Reference

Base class for all conversion services. More...

`#include <GaudiKernel/ConversionSvc.h>`

Inheritance diagram for ConversionSvc:
[legend]
Collaboration diagram for ConversionSvc:
[legend]

## Classes
class | WorkerEntry

## Public Member Functions
| ConversionSvc (const std::string &name, ISvcLocator *svc, long type)
| Standard Constructor. More...
| ConversionSvc (const ConversionSvc &)=delete
| disable copy and assignment More...
ConversionSvc & | operator= (const ConversionSvc &)=delete
StatusCode | initialize () override
| Initialize the service. More...
StatusCode | finalize () override
| stop the service. More...
long | repSvcType () const override
| Retrieve the class type of the data store the converter uses. More...
const CLID & | objType () const override
| Implementation of IConverter: dummy call. More...
StatusCode | setDataProvider (IDataProviderSvc *pService) override
| Implementation of IConverter: Set Data provider service. More...
SmartIF< IDataProviderSvc > & | dataProvider () const override
| Implementation of IConverter: Get Data provider service. More...
StatusCode | setConversionSvc (IConversionSvc *svc) override
| Implementation of IConverter: Set conversion service the converter is connected to. More...
SmartIF< IConversionSvc > & | conversionSvc () const override
| Implementation of IConverter: Get conversion service the converter is connected to. More...
StatusCode | setAddressCreator (IAddressCreator *creator) override
| Set address creator facility. More...
SmartIF< IAddressCreator > & | addressCreator () const override
| Retrieve address creator facility. More...
StatusCode | createObj (IOpaqueAddress *pAddress, DataObject *&refpObject) override
| Implementation of IConverter: Create the transient representation of an object. More...
StatusCode | fillObjRefs (IOpaqueAddress *pAddress, DataObject *pObject) override
| Implementation of IConverter: Resolve the references of the created transient object. More...
StatusCode | updateObj (IOpaqueAddress *pAddress, DataObject *refpObject) override
| Implementation of IConverter: Update the transient object from the other representation. More...
StatusCode | updateObjRefs (IOpaqueAddress *pAddress, DataObject *pObject) override
| Implementation of IConverter: Update the references of an updated transient object. More...
StatusCode | createRep (DataObject *pObject, IOpaqueAddress *&refpAddress) override
| Implementation of IConverter: Convert the transient object to the requested representation. More...
StatusCode | fillRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) override
| Implementation of IConverter: Resolve the references of the converted object. More...
StatusCode | updateRep (IOpaqueAddress *pAddress, DataObject *pObject) override
| Implementation of IConverter: Update the converted representation of a transient object. More...
StatusCode | updateRepRefs (IOpaqueAddress *pAddress, DataObject *pObject) override
| Implementation of IConverter: Update the references of an already converted object. More...
StatusCode | addConverter (const CLID &clid) override
| Add converter object to conversion service. More...
StatusCode | addConverter (IConverter *pConverter) override
| Add converter object to conversion service. More...
StatusCode | removeConverter (const CLID &clid) override
| Remove converter object from conversion service (if present). More...
IConverter * | converter (const CLID &wanted) override
| Retrieve converter from list. More...
StatusCode | connectOutput (const std::string &outputFile, const std::string &openMode) override
| Connect the output file to the service with open mode. More...
StatusCode | connectOutput (const std::string &output) override
| Connect the output file to the service. More...
StatusCode | commitOutput (const std::string &output, bool do_commit) override
| Commit pending output. More...
StatusCode | createAddress (long svc_type, const CLID &clid, const std::string *par, const unsigned long *ip, IOpaqueAddress *&refpAddress) override
| Create a Generic address using explicit arguments to identify a single object. More...
StatusCode | convertAddress (const IOpaqueAddress *pAddress, std::string &refAddress) override
| Convert an address to string form. More...
StatusCode | createAddress (long svc_type, const CLID &clid, const std::string &refAddress, IOpaqueAddress *&refpAddress) override
| Convert an address in string form to object form. More...
virtual StatusCode | updateServiceState (IOpaqueAddress *pAddress)
| Update state of the service. More...
Public Member Functions inherited from extends< Service, IConversionSvc, IAddressCreator >
void * | i_cast (const InterfaceID &tid) const override
| Implementation of IInterface::i_cast. More...
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override
| Implementation of IInterface::queryInterface. More...
std::vector< std::string > | getInterfaceNames () const override
| Implementation of IInterface::getInterfaceNames. More...
Public Member Functions inherited from Service
const std::string & | name () const override
| Retrieve name of the service. More...
StatusCode | configure () override
StatusCode | initialize () override
StatusCode | start () override
StatusCode | stop () override
StatusCode | finalize () override
StatusCode | terminate () override
Gaudi::StateMachine::State | FSMState () const override
Gaudi::StateMachine::State | targetFSMState () const override
StatusCode | reinitialize () override
StatusCode | restart () override
StatusCode | sysInitialize () override
| Initialize Service. More...
StatusCode | sysStart () override
| Initialize Service. More...
StatusCode | sysStop () override
| Initialize Service. More...
StatusCode | sysFinalize () override
| Finalize Service. More...
StatusCode | sysReinitialize () override
| Re-initialize the Service. More...
StatusCode | sysRestart () override
| Re-initialize the Service. More...
| Service (std::string name, ISvcLocator *svcloc)
| Standard Constructor. More...
SmartIF< ISvcLocator > & | serviceLocator () const override
| Retrieve pointer to service locator. More...
StatusCode | setProperties ()
| Method for setting declared properties to the values specified for the job. More...
template<class T >
StatusCode | service (const std::string &name, const T *&psvc, bool createIf=true) const
| Access a service by name, creating it if it doesn't already exist. More...
template<class T >
StatusCode | service (const std::string &name, T *&psvc, bool createIf=true) const
template<typename IFace = IService>
SmartIF< IFace > | service (const std::string &name, bool createIf=true) const
template<class T >
StatusCode | service (const std::string &svcType, const std::string &svcName, T *&psvc) const
| Access a service by name and type, creating it if it doesn't already exist. More...
template<class T >
StatusCode | declareTool (ToolHandle< T > &handle, std::string toolTypeAndName, bool createIf=true)
| Declare used tool. More...
SmartIF< IAuditorSvc > & | auditorSvc () const
| The standard auditor service.May not be invoked before sysInitialize() has been invoked. More...
Public Member Functions inherited from PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > >
| PropertyHolder ()=default
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Details::PropertyBase &prop)
| Declare a property. More...
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, TYPE &value, const std::string &doc="none")
| Helper to wrap a regular data member and use it as a regular property. More...
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, Gaudi::Property< TYPE, VERIFIER, HANDLERS > &prop, const std::string &doc="none")
| Declare a PropertyBase instance setting name and documentation. More...
Gaudi::Details::PropertyBase * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="")
| Declare a remote property. More...
StatusCode | setProperty (const Gaudi::Details::PropertyBase &p) override
| set the property form another property More...
StatusCode | setProperty (const std::string &s) override
| set the property from the formatted string More...
StatusCode | setProperty (const std::string &n, const std::string &v) override
| set the property from name and the value More...
StatusCode | setProperty (const std::string &name, const TYPE &value)
| set the property form the value More...
StatusCode | getProperty (Gaudi::Details::PropertyBase *p) const override
| get the property More...
const Gaudi::Details::PropertyBase & | getProperty (const std::string &name) const override
| get the property by name More...
StatusCode | getProperty (const std::string &n, std::string &v) const override
| convert the property to the string More...
const std::vector< Gaudi::Details::PropertyBase * > & | getProperties () const override
| get all properties More...
bool | hasProperty (const std::string &name) const override
| Return true if we have a property with the given name. More...
| PropertyHolder (const PropertyHolder &)=delete
PropertyHolder & | operator= (const PropertyHolder &)=delete
Public Member Functions inherited from CommonMessaging< implements< IService, IProperty, IStateful > >
MSG::Level | msgLevel () const
| get the cached level (originally extracted from the embedded MsgStream) More...
bool | msgLevel (MSG::Level lvl) const
| get the output level from the embedded MsgStream More...
MSG::Level | outputLevel () const
| Backward compatibility function for getting the output level. More...
Public Member Functions inherited from CommonMessagingBase
virtual | ~CommonMessagingBase ()=default
| Virtual destructor. More...
const SmartIF< IMessageSvc > & | msgSvc () const
| The standard message service. More...
MsgStream & | msgStream () const
| Return an uninitialized MsgStream. More...
MsgStream & | msgStream (const MSG::Level level) const
| Predefined configurable message stream for the efficient printouts. More...
MsgStream & | always () const
| shortcut for the method msgStream(MSG::ALWAYS) More...
MsgStream & | fatal () const
| shortcut for the method msgStream(MSG::FATAL) More...
MsgStream & | err () const
| shortcut for the method msgStream(MSG::ERROR) More...
MsgStream & | error () const
| shortcut for the method msgStream(MSG::ERROR) More...
MsgStream & | warning () const
| shortcut for the method msgStream(MSG::WARNING) More...
MsgStream & | info () const
| shortcut for the method msgStream(MSG::INFO) More...
MsgStream & | debug () const
| shortcut for the method msgStream(MSG::DEBUG) More...
MsgStream & | verbose () const
| shortcut for the method msgStream(MSG::VERBOSE) More...
MsgStream & | msg () const
| shortcut for the method msgStream(MSG::INFO) More...

## Protected Member Functions
virtual IConverter * | createConverter (long typ, const CLID &clid, const ICnvFactory *fac)
| Create new Converter using factory. More...
virtual StatusCode | configureConverter (long typ, const CLID &clid, IConverter *cnv)
| Configure the new converter before initialize is called. More...
virtual StatusCode | initializeConverter (long typ, const CLID &clid, IConverter *cnv)
| Initialize the new converter. More...
virtual StatusCode | activateConverter (long typ, const CLID &clid, IConverter *cnv)
| Activate the new converter after initialization. More...
virtual void | loadConverter (DataObject *pObject)
| Load converter or dictionary needed by the converter. More...
virtual SmartIF< IAddressCreator > & | addressCreator ()
| Retrieve address creation interface. More...
StatusCode | makeCall (int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Protected Member Functions inherited from Service
| ~Service () override
| Standard Destructor. More...
int | outputLevel () const
| get the `Service's` output level More...
Protected Member Functions inherited from PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > >
Gaudi::Details::PropertyBase * | property (const std::string &name) const
Protected Member Functions inherited from CommonMessaging< implements< IService, IProperty, IStateful > >
MSG::Level | setUpMessaging () const
| Set up local caches. More...
MSG::Level | resetMessaging ()
| Reinitialize internal states. More...
void | updateMsgStreamOutputLevel (int level)
| Update the output level of the cached MsgStream. More...

## Protected Attributes
SmartIF< IDataProviderSvc > | m_dataSvc
| Pointer to data provider service. More...
SmartIF< IAddressCreator > | m_addressCreator
| Pointer to the address creation service interface. More...
SmartIF< IConversionSvc > | m_cnvSvc
| Pointer to the IConversionSvc interface of this. More...
long | m_type
| Conversion service type. More...
std::vector< WorkerEntry > | m_workers
| List of conversion workers. More...
Protected Attributes inherited from Service
Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE
| Service state. More...
Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE
| Service state. More...
Gaudi::Property< int > | m_outputLevel {this, "OutputLevel", MSG::NIL, "output level"}
Gaudi::Property< bool > | m_auditInit {this, "AuditServices", false, " unused"}
Gaudi::Property< bool > | m_auditorInitialize {this, "AuditInitialize", false, "trigger auditor on initialize()"}
Gaudi::Property< bool > | m_auditorStart {this, "AuditStart", false, "trigger auditor on start()"}
Gaudi::Property< bool > | m_auditorStop {this, "AuditStop", false, "trigger auditor on stop()"}
Gaudi::Property< bool > | m_auditorFinalize {this, "AuditFinalize", false, "trigger auditor on finalize()"}
Gaudi::Property< bool > | m_auditorReinitialize {this, "AuditReinitialize", false, "trigger auditor on reinitialize()"}
Gaudi::Property< bool > | m_auditorRestart {this, "AuditRestart", false, "trigger auditor on restart()"}
SmartIF< IAuditorSvc > | m_pAuditorSvc
| Auditor Service. More...

## Additional Inherited Members
Public Types inherited from extends< Service, IConversionSvc, IAddressCreator >
using | base_class = extends
| Typedef to this class. More...
using | extend_interfaces_base = extend_interfaces< Interfaces... >
| Typedef to the base of this class. More...
Public Types inherited from Service
using | Factory = Gaudi::PluginService::Factory< IService *(const std::string &, ISvcLocator *)>
Public Types inherited from PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > >
using | PropertyHolderImpl = PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > >
| Typedef used to refer to this class from derived classes, as in. More...
Public Types inherited from CommonMessaging< implements< IService, IProperty, IStateful > >
using | base_class = CommonMessaging
Public Types inherited from extend_interfaces< Interfaces... >
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids... >::type
| take union of the ext_iids of all Interfaces... More...

## Detailed Description

Base class for all conversion services.

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

This supports self learning converters: User hooks include the following (overridable) entries:

- findCnvFactory: returns a suitable converter factory
- createConverter: the actual convetrer creation
- configureConverter: configure converter before initialize
- initializeConverter: initializes the converter
- activateConverter: any additional configuration to be done after initialize.

configureConverter and activateConverter are user hooks, where the convetrer can be manipulated by the hosting service and knowledge can be supplied, which a "generic" converter cannot aquire itself.

These hooks allow any sub-classed conversion service to override the calls and create converters, which aquire the knowledge about their persistency type and the object type they convert during the initialization.

Only AFTER these three steps the converter must satisfy the storage type of the hosting service and the class type of the required object type.

Author
  Markus Frank

Version
  1.0

Definition at line 45 of file ConversionSvc.h.

## Constructor & Destructor Documentation

## ◆ ConversionSvc() [1/2]

ConversionSvc::ConversionSvc | ( | const std::string & | name,
|  | ISvcLocator * | svc,
|  | long | type
| ) |  |

Standard Constructor.

Definition at line 310 of file ConversionSvc.cpp.

311 : base_class( name, svc ), m_cnvSvc( this ) {
312 m_type = type;
313 m_dataSvc = nullptr;
314 setAddressCreator( this ).ignore();
315 }
extends< Service, IConversionSvc, IAddressCreator >::base_class
extends base_class
Typedef to this class.
Definition: extends.h:14
Service::name
const std::string & name() const override
Retrieve name of the service.
Definition: Service.cpp:274
ConversionSvc::setAddressCreator
StatusCode setAddressCreator(IAddressCreator *creator) override
Set address creator facility.
Definition: ConversionSvc.cpp:158
gaudirun.type
type
Definition: gaudirun.py:142
ConversionSvc::m_dataSvc
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
Definition: ConversionSvc.h:202
StatusCode::ignore
const StatusCode & ignore() const
Ignore/check StatusCode.
Definition: StatusCode.h:153
ConversionSvc::m_cnvSvc
SmartIF< IConversionSvc > m_cnvSvc
Pointer to the IConversionSvc interface of this.
Definition: ConversionSvc.h:206
ConversionSvc::m_type
long m_type
Conversion service type.
Definition: ConversionSvc.h:208

## ◆ ConversionSvc() [2/2]

ConversionSvc::ConversionSvc | ( | const ConversionSvc & |  | ) |
| delete

disable copy and assignment

## Member Function Documentation

## ◆ activateConverter()

StatusCode ConversionSvc::activateConverter | ( | long | typ,
|  | const CLID & | clid,
|  | IConverter * | cnv
| ) |  |
| protected virtual

Activate the new converter after initialization.

Activate the freshly created converter.

Definition at line 267 of file ConversionSvc.cpp.

267 {
268 return pConverter ? StatusCode::SUCCESS : StatusCode( Status::NO_CONVERTER );
269 }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50

## ◆ addConverter() [1/2]

StatusCode ConversionSvc::addConverter | ( | const CLID & | clid | ) |
| override

Add converter object to conversion service.

Definition at line 179 of file ConversionSvc.cpp.

179 {
180 // First look for the more specific converter
181 long typ = repSvcType();
182 IConverter* pConverter = createConverter( typ, clid, nullptr );
183 if ( pConverter ) {
184 StatusCode status = configureConverter( typ, clid, pConverter );
185 if ( status.isSuccess() ) {
186 status = initializeConverter( typ, clid, pConverter );
187 if ( status.isSuccess() ) {
188 status = activateConverter( typ, clid, pConverter );
189 if ( status.isSuccess() ) {
190 long conv_typ = pConverter->repSvcType();
191 const CLID& conv_clid = pConverter->objType();
192 typ = ( typ < 0xFF ) ? typ : typ & 0xFFFFFF00;
193 conv_typ = ( conv_typ < 0xFF ) ? conv_typ : conv_typ & 0xFFFFFF00;
194 if ( conv_typ == typ && conv_clid == clid ) { return addConverter( pConverter ); }
195 }
196 }
197 }
198 pConverter->release();
199 }
200 return Status::NO_CONVERTER;
201 }
IConverter::objType
virtual const CLID & objType() const =0
Retrieve the class type of objects the converter produces.
ConversionSvc::configureConverter
virtual StatusCode configureConverter(long typ, const CLID &clid, IConverter *cnv)
Configure the new converter before initialize is called.
Definition: ConversionSvc.cpp:253
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
ConversionSvc::repSvcType
long repSvcType() const override
Retrieve the class type of the data store the converter uses.
Definition: ConversionSvc.cpp:275
IConverter::repSvcType
virtual long repSvcType() const =0
Retrieve the class type of the data store the converter uses.
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
StatusCode::isSuccess
bool isSuccess() const
Definition: StatusCode.h:267
ConversionSvc::initializeConverter
virtual StatusCode initializeConverter(long typ, const CLID &clid, IConverter *cnv)
Initialize the new converter.
Definition: ConversionSvc.cpp:262
IInterface::release
virtual unsigned long release()=0
Release Interface instance.
ConversionSvc::createConverter
virtual IConverter * createConverter(long typ, const CLID &clid, const ICnvFactory *fac)
Create new Converter using factory.
Definition: ConversionSvc.cpp:243
ConversionSvc::addConverter
StatusCode addConverter(const CLID &clid) override
Add converter object to conversion service.
Definition: ConversionSvc.cpp:179
ConversionSvc::activateConverter
virtual StatusCode activateConverter(long typ, const CLID &clid, IConverter *cnv)
Activate the new converter after initialization.
Definition: ConversionSvc.cpp:267

## ◆ addConverter() [2/2]

StatusCode ConversionSvc::addConverter | ( | IConverter * | pConverter | ) |
| override

Add converter object to conversion service.

Definition at line 204 of file ConversionSvc.cpp.

204 {
205 if ( pConverter ) {
206 const CLID& clid = pConverter->objType();
207 removeConverter( clid ).ignore();
208 m_workers.emplace_back( clid, pConverter );
209 return StatusCode::SUCCESS;
210 }
211 return Status::NO_CONVERTER;
212 }
IConverter::objType
virtual const CLID & objType() const =0
Retrieve the class type of objects the converter produces.
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
ConversionSvc::removeConverter
StatusCode removeConverter(const CLID &clid) override
Remove converter object from conversion service (if present).
Definition: ConversionSvc.cpp:215
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
StatusCode::ignore
const StatusCode & ignore() const
Ignore/check StatusCode.
Definition: StatusCode.h:153
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210

## ◆ addressCreator() [1/2]

SmartIF< IAddressCreator > & ConversionSvc::addressCreator | ( |  | ) | const
| override

Retrieve address creator facility.

Access the transient store.

Definition at line 170 of file ConversionSvc.cpp.

170 { return m_addressCreator; }
ConversionSvc::m_addressCreator
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
Definition: ConversionSvc.h:204

## ◆ addressCreator() [2/2]

virtual SmartIF<IAddressCreator>& ConversionSvc::addressCreator | ( |  | ) |
| inline protected virtual

Retrieve address creation interface.

Definition at line 195 of file ConversionSvc.h.

195 { return m_addressCreator; }
ConversionSvc::m_addressCreator
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
Definition: ConversionSvc.h:204

## ◆ commitOutput()

StatusCode ConversionSvc::commitOutput | ( | const std::string & | output,
|  | bool | do_commit
| ) |  |
| override

Commit pending output.

Definition at line 286 of file ConversionSvc.cpp.

286 { return StatusCode::SUCCESS; }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85

## ◆ configureConverter()

StatusCode ConversionSvc::configureConverter | ( | long | typ,
|  | const CLID & | clid,
|  | IConverter * | cnv
| ) |  |
| protected virtual

Configure the new converter before initialize is called.

Configure the freshly created converter.

Definition at line 253 of file ConversionSvc.cpp.

253 {
254 if ( !pConverter ) return Status::NO_CONVERTER;
255 pConverter->setConversionSvc( this ).ignore();
256 pConverter->setAddressCreator( m_addressCreator ).ignore();
257 pConverter->setDataProvider( m_dataSvc ).ignore();
258 return StatusCode::SUCCESS;
259 }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
ConversionSvc::m_addressCreator
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
Definition: ConversionSvc.h:204
ConversionSvc::m_dataSvc
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
Definition: ConversionSvc.h:202

## ◆ connectOutput() [1/2]

StatusCode ConversionSvc::connectOutput | ( | const std::string & | outputFile,
|  | const std::string & | openMode
| ) |  |
| override

Connect the output file to the service with open mode.

Definition at line 278 of file ConversionSvc.cpp.

278 {
279 return connectOutput( outputFile );
280 }
ConversionSvc::connectOutput
StatusCode connectOutput(const std::string &outputFile, const std::string &openMode) override
Connect the output file to the service with open mode.
Definition: ConversionSvc.cpp:278

## ◆ connectOutput() [2/2]

StatusCode ConversionSvc::connectOutput | ( | const std::string & | output | ) |
| override

Connect the output file to the service.

Definition at line 283 of file ConversionSvc.cpp.

283 { return StatusCode::SUCCESS; }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85

## ◆ conversionSvc()

SmartIF< IConversionSvc > & ConversionSvc::conversionSvc | ( |  | ) | const
| override

Implementation of IConverter: Get conversion service the converter is connected to.

Get conversion service the converter is connected to.

Definition at line 176 of file ConversionSvc.cpp.

176 { return m_cnvSvc; }
ConversionSvc::m_cnvSvc
SmartIF< IConversionSvc > m_cnvSvc
Pointer to the IConversionSvc interface of this.
Definition: ConversionSvc.h:206

## ◆ convertAddress()

StatusCode ConversionSvc::convertAddress | ( | const IOpaqueAddress * | pAddress,
|  | std::string & | refAddress
| ) |  |
| override

Convert an address to string form.

Definition at line 297 of file ConversionSvc.cpp.

297 {
298 refAddress.clear();
299 return StatusCode::FAILURE;
300 }
std::string::clear
T clear(T... args)
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:86

## ◆ converter()

IConverter * ConversionSvc::converter | ( | const CLID & | wanted | ) |
| override

Retrieve converter from list.

Definition at line 129 of file ConversionSvc.cpp.

129 {
130 IConverter* cnv = nullptr;
131 auto i = std::find_if( m_workers.begin(), m_workers.end(), CnvTest( clid ) );
132 if ( i != m_workers.end() ) cnv = i->converter();
133 if ( !cnv ) {
134 StatusCode status = addConverter( clid );
135 if ( status.isSuccess() ) {
136 i = std::find_if( m_workers.begin(), m_workers.end(), CnvTest( clid ) );
137 if ( i != m_workers.end() ) cnv = i->converter();
138 }
139 }
140 return cnv;
141 }
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
StatusCode::isSuccess
bool isSuccess() const
Definition: StatusCode.h:267
std::find_if
T find_if(T... args)
ConversionSvc::addConverter
StatusCode addConverter(const CLID &clid) override
Add converter object to conversion service.
Definition: ConversionSvc.cpp:179
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210

## ◆ createAddress() [1/2]

StatusCode ConversionSvc::createAddress | ( | long | svc_type,
|  | const CLID & | clid,
|  | const std::string * | par,
|  | const unsigned long * | ip,
|  | IOpaqueAddress *& | refpAddress
| ) |  |
| override

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

Definition at line 289 of file ConversionSvc.cpp.

291 {
292 refpAddress = nullptr;
293 return StatusCode::FAILURE;
294 }
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:86

## ◆ createAddress() [2/2]

StatusCode ConversionSvc::createAddress | ( | long | svc_type,
|  | const CLID & | clid,
|  | const std::string & | refAddress,
|  | IOpaqueAddress *& | refpAddress
| ) |  |
| override

Convert an address in string form to object form.

Definition at line 303 of file ConversionSvc.cpp.

304 {
305 refpAddress = nullptr;
306 return StatusCode::FAILURE;
307 }
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:86

## ◆ createConverter()

IConverter * ConversionSvc::createConverter | ( | long | typ,
|  | const CLID & | clid,
|  | const ICnvFactory * | fac
| ) |  |
| protected virtual

Create new Converter using factory.

Reimplemented in Gaudi::RootCnvSvc.

Definition at line 243 of file ConversionSvc.cpp.

243 {
244 IConverter* pConverter = Converter::Factory::create( ConverterID( typ, clid ), serviceLocator().get() ).release();
245 if ( !pConverter ) {
246 typ = ( typ < 0xFF ) ? typ : typ & 0xFFFFFF00;
247 pConverter = Converter::Factory::create( ConverterID( typ, clid ), serviceLocator().get() ).release();
248 }
249 return pConverter;
250 }
Service::serviceLocator
SmartIF< ISvcLocator > & serviceLocator() const override
Retrieve pointer to service locator.
Definition: Service.cpp:277
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
Gaudi::Functional::details::get
auto get(const Handle &handle, const Algo &, const EventContext &) -> decltype(details::deref(handle.get()))
Definition: FunctionalDetails.h:332
IInterface::release
virtual unsigned long release()=0
Release Interface instance.
ConverterID
Definition: Converter.h:134

## ◆ createObj()

StatusCode ConversionSvc::createObj | ( | IOpaqueAddress * | pAddress,
|  | DataObject *& | refpObject
| ) |  |
| override

Implementation of IConverter: Create the transient representation of an object.

Create the transient representation of an object.

Definition at line 89 of file ConversionSvc.cpp.

89 {
90 return makeCall( CREATE_OBJ, false, true, false, pAddress, refpObj );
91 }
CREATE_OBJ
Definition: PersistencySvc.cpp:40
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28

## ◆ createRep()

StatusCode ConversionSvc::createRep | ( | DataObject * | pObject,
|  | IOpaqueAddress *& | refpAddress
| ) |  |
| override

Implementation of IConverter: Convert the transient object to the requested representation.

Convert the transient object to the requested representation.

Definition at line 109 of file ConversionSvc.cpp.

109 {
110 return makeCall( CREATE_REP, true, false, false, refpAddress, pObj );
111 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
CREATE_REP
Definition: PersistencySvc.cpp:44

## ◆ dataProvider()

SmartIF< IDataProviderSvc > & ConversionSvc::dataProvider | ( |  | ) | const
| override

Implementation of IConverter: Get Data provider service.

Access the transient store.

Returns
  Pointer to data provider service

Definition at line 155 of file ConversionSvc.cpp.

155 { return m_dataSvc; }
ConversionSvc::m_dataSvc
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
Definition: ConversionSvc.h:202

## ◆ fillObjRefs()

StatusCode ConversionSvc::fillObjRefs | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | pObject
| ) |  |
| override

Implementation of IConverter: Resolve the references of the created transient object.

Resolve the references of the created transient object.

Definition at line 94 of file ConversionSvc.cpp.

94 {
95 return makeCall( FILL_OBJ_REFS, false, true, true, pAddress, pObj );
96 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
FILL_OBJ_REFS
Definition: PersistencySvc.cpp:41

## ◆ fillRepRefs()

StatusCode ConversionSvc::fillRepRefs | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | pObject
| ) |  |
| override

Implementation of IConverter: Resolve the references of the converted object.

Resolve the references of the converted object.

Definition at line 114 of file ConversionSvc.cpp.

114 {
115 return makeCall( FILL_REP_REFS, true, false, false, pAddress, pObj );
116 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
FILL_REP_REFS
Definition: PersistencySvc.cpp:45

## ◆ finalize()

StatusCode ConversionSvc::finalize | ( |  | ) |
| override

stop the service.

Definition at line 229 of file ConversionSvc.cpp.

229 {
230 // Release all workers.
231 for ( auto& i : m_workers ) {
232 if ( i.converter()->finalize().isFailure() ) { error() << "finalizing worker" << endmsg; }
233 }
234 m_workers.clear();
235 // release interfaces
236 m_addressCreator = nullptr;
237 m_dataSvc = nullptr;
238 m_cnvSvc = nullptr;
239 return Service::finalize();
240 }
Service::finalize
StatusCode finalize() override
Definition: Service.cpp:164
ConversionSvc::m_addressCreator
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
Definition: ConversionSvc.h:204
CommonMessagingBase::error
MsgStream & error() const
shortcut for the method msgStream(MSG::ERROR)
Definition: CommonMessaging.h:98
ConversionSvc::m_dataSvc
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
Definition: ConversionSvc.h:202
ConversionSvc::m_cnvSvc
SmartIF< IConversionSvc > m_cnvSvc
Pointer to the IConversionSvc interface of this.
Definition: ConversionSvc.h:206
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:192

## ◆ initialize()

StatusCode ConversionSvc::initialize | ( |  | ) |
| override

Initialize the service.

Definition at line 226 of file ConversionSvc.cpp.

226 { return Service::initialize(); }
Service::initialize
StatusCode initialize() override
Definition: Service.cpp:60

## ◆ initializeConverter()

StatusCode ConversionSvc::initializeConverter | ( | long | typ,
|  | const CLID & | clid,
|  | IConverter * | cnv
| ) |  |
| protected virtual

Initialize the new converter.

Initialize new converter.

Definition at line 262 of file ConversionSvc.cpp.

262 {
263 return pConverter ? pConverter->initialize() : Status::NO_CONVERTER;
264 }

## ◆ loadConverter()

void ConversionSvc::loadConverter | ( | DataObject * | pObject | ) |
| protected virtual

Load converter or dictionary needed by the converter.

Reimplemented in Gaudi::RootCnvSvc.

Definition at line 84 of file ConversionSvc.cpp.

84 {}

## ◆ makeCall()

StatusCode ConversionSvc::makeCall | ( | int | typ,
|  | bool | ignore_add,
|  | bool | ignore_obj,
|  | bool | update,
|  | IOpaqueAddress *& | pAddress,
|  | DataObject *& | pObject
| ) |  |
| protected

Definition at line 28 of file ConversionSvc.cpp.

29 {
30 if ( !pAddress && !ignore_add ) return Status::INVALID_ADDRESS;
31 if ( !pObject && !ignore_obj ) return Status::INVALID_OBJECT;
32 const CLID& obj_class =
33 ( pObject && !ignore_obj ) ? pObject->clID() : ( pAddress && !ignore_add ) ? pAddress->clID() : CLID_NULL;
34 IConverter* cnv = converter( obj_class );
35 if ( !cnv && pObject ) {
36 // Give it a try to autoload the class (dictionary) for which the converter is needed
37 loadConverter( pObject );
38 cnv = converter( obj_class );
39 }
40
41 StatusCode status( StatusCode::FAILURE, true );
42 if ( cnv ) {
43 switch ( typ ) {
44 case CREATE_OBJ:
45 pObject = nullptr;
46 status = cnv->createObj( pAddress, pObject );
47 break;
48 case FILL_OBJ_REFS:
49 status = cnv->fillObjRefs( pAddress, pObject );
50 break;
51 case UPDATE_OBJ:
52 status = cnv->updateObj( pAddress, pObject );
53 break;
54 case UPDATE_OBJ_REFS:
55 status = cnv->updateObjRefs( pAddress, pObject );
56 break;
57 case CREATE_REP:
58 pAddress = nullptr;
59 status = cnv->createRep( pObject, pAddress );
60 break;
61 case FILL_REP_REFS:
62 status = cnv->fillRepRefs( pAddress, pObject );
63 break;
64 case UPDATE_REP:
65 status = cnv->updateRep( pAddress, pObject );
66 break;
67 case UPDATE_REP_REFS:
68 status = cnv->updateRepRefs( pAddress, pObject );
69 break;
70 default:
71 status = StatusCode::FAILURE;
72 break;
73 }
74 if ( status.isSuccess() && update ) { status = updateServiceState( pAddress ); }
75 return status;
76 }
77 status.ignore();
78 info() << "No converter for object ";
79 if ( pObject ) { msgStream() << System::typeinfoName( typeid( *pObject ) ); }
80 msgStream() << " CLID= " << obj_class << endmsg;
81 return Status::NO_CONVERTER;
82 }
CREATE_OBJ
Definition: PersistencySvc.cpp:40
UPDATE_OBJ_REFS
Definition: PersistencySvc.cpp:43
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
IConverter::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddress, DataObject *&refpObject)=0
Create the transient representation of an object.
System::typeinfoName
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
Definition: System.cpp:298
FILL_OBJ_REFS
Definition: PersistencySvc.cpp:41
IConverter::createRep
virtual StatusCode createRep(DataObject *pObject, IOpaqueAddress *&refpAddress)=0
Convert the transient object to the requested representation.
CommonMessagingBase::info
MsgStream & info() const
shortcut for the method msgStream(MSG::INFO)
Definition: CommonMessaging.h:104
IConverter::updateRepRefs
virtual StatusCode updateRepRefs(IOpaqueAddress *pAddress, DataObject *pObject)=0
Update the references of an already converted object.
ConversionSvc::loadConverter
virtual void loadConverter(DataObject *pObject)
Load converter or dictionary needed by the converter.
Definition: ConversionSvc.cpp:84
IConverter::updateObj
virtual StatusCode updateObj(IOpaqueAddress *pAddress, DataObject *refpObject)=0
Update the transient object from the other representation.
ConversionSvc::converter
IConverter * converter(const CLID &wanted) override
Retrieve converter from list.
Definition: ConversionSvc.cpp:129
FILL_REP_REFS
Definition: PersistencySvc.cpp:45
IOpaqueAddress::clID
virtual const CLID & clID() const =0
Retrieve class information from link.
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
IConverter::updateObjRefs
virtual StatusCode updateObjRefs(IOpaqueAddress *pAddress, DataObject *pObject)=0
Update the references of an updated transient object.
IConverter::updateRep
virtual StatusCode updateRep(IOpaqueAddress *pAddress, DataObject *pObject)=0
Update the converted representation of a transient object.
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
CommonMessagingBase::msgStream
MsgStream & msgStream() const
Return an uninitialized MsgStream.
Definition: CommonMessaging.h:71
ConversionSvc::updateServiceState
virtual StatusCode updateServiceState(IOpaqueAddress *pAddress)
Update state of the service.
Definition: ConversionSvc.cpp:86
IConverter::fillObjRefs
virtual StatusCode fillObjRefs(IOpaqueAddress *pAddress, DataObject *pObject)=0
Resolve the references of the created transient object.
DataObject::clID
virtual const CLID & clID() const
Retrieve reference to class definition structure.
Definition: DataObject.cpp:56
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:86
CREATE_REP
Definition: PersistencySvc.cpp:44
UPDATE_OBJ
Definition: PersistencySvc.cpp:42
IConverter::fillRepRefs
virtual StatusCode fillRepRefs(IOpaqueAddress *pAddress, DataObject *pObject)=0
Resolve the references of the converted object.
UPDATE_REP_REFS
Definition: PersistencySvc.cpp:47
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:192
GaudiPython.Pythonizations.update
update
Definition: Pythonizations.py:119
UPDATE_REP
Definition: PersistencySvc.cpp:46

## ◆ objType()

const CLID & ConversionSvc::objType | ( |  | ) | const
| override

Implementation of IConverter: dummy call.

Retrieve the class type of objects the converter produces.

Definition at line 272 of file ConversionSvc.cpp.

272 { return CLID_NULL; }

## ◆ operator=()

ConversionSvc& ConversionSvc::operator= | ( | const ConversionSvc & |  | ) |
| delete

## ◆ removeConverter()

StatusCode ConversionSvc::removeConverter | ( | const CLID & | clid | ) |
| override

Remove converter object from conversion service (if present).

Definition at line 215 of file ConversionSvc.cpp.

215 {
216
217 auto i = std::partition( std::begin( m_workers ), std::end( m_workers ),
218 [f = CnvTest( clid )]( const WorkerEntry& we ) { return !f( we ); } );
219 if ( i == std::end( m_workers ) ) return Status::NO_CONVERTER;
220 std::for_each( i, std::end( m_workers ), []( WorkerEntry& w ) { w.converter()->finalize().ignore(); } );
221 m_workers.erase( i, std::end( m_workers ) );
222 return StatusCode::SUCCESS;
223 }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
std::end
T end(T... args)
std::partition
T partition(T... args)
std::begin
T begin(T... args)
std::for_each
T for_each(T... args)
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210

## ◆ repSvcType()

long ConversionSvc::repSvcType | ( |  | ) | const
| override

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

Definition at line 275 of file ConversionSvc.cpp.

275 { return m_type; }
ConversionSvc::m_type
long m_type
Conversion service type.
Definition: ConversionSvc.h:208

## ◆ setAddressCreator()

StatusCode ConversionSvc::setAddressCreator | ( | IAddressCreator * | creator | ) |
| override

Set address creator facility.

Definition at line 158 of file ConversionSvc.cpp.

158 {
159 m_addressCreator = creator;
160 for ( auto& i : m_workers ) {
161 auto* cnv = i.converter();
162 if ( cnv ) {
163 if ( cnv->setAddressCreator( m_addressCreator ).isFailure() ) { error() << "setting Address Creator" << endmsg; }
164 }
165 }
166 return StatusCode::SUCCESS;
167 }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
ConversionSvc::m_addressCreator
SmartIF< IAddressCreator > m_addressCreator
Pointer to the address creation service interface.
Definition: ConversionSvc.h:204
CommonMessagingBase::error
MsgStream & error() const
shortcut for the method msgStream(MSG::ERROR)
Definition: CommonMessaging.h:98
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:192

## ◆ setConversionSvc()

StatusCode ConversionSvc::setConversionSvc | ( | IConversionSvc * | svc | ) |
| override

Implementation of IConverter: Set conversion service the converter is connected to.

Set conversion service the converter is connected to.

Definition at line 173 of file ConversionSvc.cpp.

173 { return StatusCode::FAILURE; }
StatusCode::FAILURE
constexpr static const auto FAILURE
Definition: StatusCode.h:86

## ◆ setDataProvider()

StatusCode ConversionSvc::setDataProvider | ( | IDataProviderSvc * | pService | ) |
| override

Implementation of IConverter: Set Data provider service.

Define transient data store.

Returns
  Status code indicating success or failure

Parameters

  pService | Pointer to data provider service

Definition at line 144 of file ConversionSvc.cpp.

144 {
145 if ( !pDataSvc ) return StatusCode::SUCCESS; // Atlas does not use DataSvc
146 m_dataSvc = pDataSvc;
147 for ( auto& i : m_workers ) {
148 IConverter* cnv = i.converter();
149 if ( cnv && cnv->setDataProvider( m_dataSvc ).isFailure() ) { error() << "setting Data Provider" << endmsg; }
150 }
151 return StatusCode::SUCCESS;
152 }
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
IConverter::setDataProvider
virtual StatusCode setDataProvider(IDataProviderSvc *pService)=0
Set Data provider service.
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85
CommonMessagingBase::error
MsgStream & error() const
shortcut for the method msgStream(MSG::ERROR)
Definition: CommonMessaging.h:98
ConversionSvc::m_dataSvc
SmartIF< IDataProviderSvc > m_dataSvc
Pointer to data provider service.
Definition: ConversionSvc.h:202
StatusCode::isFailure
bool isFailure() const
Definition: StatusCode.h:130
ConversionSvc::m_workers
std::vector< WorkerEntry > m_workers
List of conversion workers.
Definition: ConversionSvc.h:210
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:192

## ◆ updateObj()

StatusCode ConversionSvc::updateObj | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | refpObject
| ) |  |
| override

Implementation of IConverter: Update the transient object from the other representation.

Update the transient object from the other representation.

Definition at line 99 of file ConversionSvc.cpp.

99 {
100 return makeCall( UPDATE_OBJ, false, true, false, pAddress, pObj );
101 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
UPDATE_OBJ
Definition: PersistencySvc.cpp:42

## ◆ updateObjRefs()

StatusCode ConversionSvc::updateObjRefs | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | pObject
| ) |  |
| override

Implementation of IConverter: Update the references of an updated transient object.

Update the references of an updated transient object.

Definition at line 104 of file ConversionSvc.cpp.

104 {
105 return makeCall( UPDATE_OBJ_REFS, false, true, true, pAddress, pObj );
106 }
UPDATE_OBJ_REFS
Definition: PersistencySvc.cpp:43
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28

## ◆ updateRep()

StatusCode ConversionSvc::updateRep | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | pObject
| ) |  |
| override

Implementation of IConverter: Update the converted representation of a transient object.

Update the converted representation of a transient object.

Definition at line 119 of file ConversionSvc.cpp.

119 {
120 return makeCall( UPDATE_REP, true, false, false, pAddress, pObj );
121 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
UPDATE_REP
Definition: PersistencySvc.cpp:46

## ◆ updateRepRefs()

StatusCode ConversionSvc::updateRepRefs | ( | IOpaqueAddress * | pAddress,
|  | DataObject * | pObject
| ) |  |
| override

Implementation of IConverter: Update the references of an already converted object.

Update the references of an already converted object.

Definition at line 124 of file ConversionSvc.cpp.

124 {
125 return makeCall( UPDATE_REP_REFS, true, false, false, pAddress, pObj );
126 }
ConversionSvc::makeCall
StatusCode makeCall(int typ, bool ignore_add, bool ignore_obj, bool update, IOpaqueAddress *&pAddress, DataObject *&pObject)
Definition: ConversionSvc.cpp:28
UPDATE_REP_REFS
Definition: PersistencySvc.cpp:47

## ◆ updateServiceState()

StatusCode ConversionSvc::updateServiceState | ( | IOpaqueAddress * | pAddress | ) |
| virtual

Update state of the service.

Reimplemented in Gaudi::RootCnvSvc.

Definition at line 86 of file ConversionSvc.cpp.

86 { return StatusCode::SUCCESS; }
StatusCode::SUCCESS
constexpr static const auto SUCCESS
Definition: StatusCode.h:85

## Member Data Documentation

## ◆ m_addressCreator

SmartIF<IAddressCreator> ConversionSvc::m_addressCreator
| mutable protected

Pointer to the address creation service interface.

Definition at line 204 of file ConversionSvc.h.

## ◆ m_cnvSvc

SmartIF<IConversionSvc> ConversionSvc::m_cnvSvc
| mutable protected

Pointer to the IConversionSvc interface of this.

Definition at line 206 of file ConversionSvc.h.

## ◆ m_dataSvc

SmartIF<IDataProviderSvc> ConversionSvc::m_dataSvc
| mutable protected

Pointer to data provider service.

Definition at line 202 of file ConversionSvc.h.

## ◆ m_type

long ConversionSvc::m_type
| protected

Conversion service type.

Definition at line 208 of file ConversionSvc.h.

## ◆ m_workers

std::vector<WorkerEntry> ConversionSvc::m_workers
| protected

List of conversion workers.

Definition at line 210 of file ConversionSvc.h.

The documentation for this class was generated from the following files:

- GaudiKernel/GaudiKernel/ConversionSvc.h
- GaudiKernel/src/Lib/ConversionSvc.cpp