1 #ifndef GAUDIKERNEL_CONVERSIONSVC_H
2 #define GAUDIKERNEL_CONVERSIONSVC_H 1
8 #include "GaudiKernel/Kernel.h"
9 #include "GaudiKernel/Service.h"
10 #include "GaudiKernel/IConversionSvc.h"
11 #include "GaudiKernel/IAddressCreator.h"
12 #include "GaudiKernel/IDataProviderSvc.h"
49 class WorkerEntry final {
55 : m_class(cl), m_converter(cnv) {
57 WorkerEntry(
const WorkerEntry& copy)
58 : m_class(copy.m_class), m_converter(copy.m_converter) {
60 WorkerEntry& operator = (
const WorkerEntry& copy) {
61 m_class = copy.m_class;
62 m_converter = copy.m_converter;
68 const CLID& clID()
const {
73 class CnvTest :
public std::unary_function<WorkerEntry, bool> {
77 CnvTest(
const CLID&
test) : m_test(test) {
79 bool operator()(
const WorkerEntry& testee )
const {
80 return m_test == testee.clID();
93 virtual long repSvcType()
const;
96 const CLID& objType()
const;
158 virtual StatusCode connectOutput(
const std::string& outputFile,
159 const std::string& openMode);
162 virtual StatusCode connectOutput(
const std::string& output);
165 virtual StatusCode commitOutput(
const std::string& output,
bool do_commit);
168 virtual StatusCode createAddress(
long svc_type,
170 const std::string*
par,
171 const unsigned long* ip,
176 std::string& refAddress);
179 virtual StatusCode createAddress(
long svc_type,
181 const std::string& refAddress,
195 virtual IConverter* createConverter(
long typ,
const CLID& clid,
const ICnvFactory* fac);
207 virtual void loadConverter(
DataObject* pObject);
211 return m_addressCreator;
231 std::vector<WorkerEntry> m_workers;
239 #endif // GAUDIKERNEL_CONVERSIONSVC_H
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
The data converters are responsible to translate data from one representation into another...
IAddressCreator interface definition.
Data provider interface definition.
This class is used for returning status codes from appropriate routines.
unsigned int CLID
Class ID definition.
Base class used to extend a class implementing other interfaces.
Opaque address interface definition.
Base class for all conversion services.
A DataObject is the base class of any identifiable object on any data store.