| The Gaudi Framework v32r1 (f65d50dc)

IConversionSvc.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_ICONVERSIONSVC_H
2 #define GAUDIKERNEL_ICONVERSIONSVC_H
3
4 // Include files
5 #include <string>
6
7 #include "GaudiKernel/IConverter.h"
8
9 // Forward declarations
10 class ICnvFactory;
11
37 class GAUDI_API IConversionSvc : virtual public IConverter {
38 public:
40 DeclareInterfaceID( IConversionSvc, 4, 0 );
41
46 virtual StatusCode addConverter( IConverter* pConverter ) = 0;
47
52 virtual StatusCode addConverter( const CLID& clid ) = 0;
53
59 virtual StatusCode removeConverter( const CLID& clid ) = 0;
60
65 virtual IConverter* converter( const CLID& clid ) = 0;
66
71 virtual StatusCode connectOutput( const std::string& outputFile ) = 0;
72
78 virtual StatusCode connectOutput( const std::string& outputFile, const std::string& openMode ) = 0;
79
89 virtual StatusCode commitOutput( const std::string& outputFile, bool do_commit ) = 0;
90
92 enum class Status : StatusCode::code_t {
94 INVALID_ADDRESS = static_cast<StatusCode::code_t>( IInterface::Status::LAST_ERROR ) + 1,
96 INVALID_OBJECT,
98 NO_MEMORY,
100 BAD_STORAGE_TYPE,
102 NO_SOURCE_OBJECT,
104 NO_CONVERTER
105 };
106 };
107
108 STATUSCODE_ENUM_DECL( IConversionSvc::Status )
109
110 #endif // GAUDIKERNEL_ICONVERSIONSVC_H
IConverter
The data converters are responsible to translate data from one representation into another.
Definition: IConverter.h:58
IConversionSvc
Definition: IConversionSvc.h:37
std::string
STL class.
STATUSCODE_ENUM_DECL
#define STATUSCODE_ENUM_DECL(ENUM)
Declare an enum to be used as StatusCode value.
Definition: StatusCode.h:239
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
IInterface::Status::LAST_ERROR
Last error.
IConverter::DeclareInterfaceID
DeclareInterfaceID(IConverter, 3, 0)
InterfaceID.
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:71
IConverter.h
IConversionSvc::Status
Status
Status code definitions.
Definition: IConversionSvc.h:92
StatusCode::code_t
unsigned long code_t
type of StatusCode value
Definition: StatusCode.h:52