Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v31r0 (aeb156f0)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
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 
8 
9 // Forward declarations
10 class ICnvFactory;
11 
37 class GAUDI_API IConversionSvc : virtual public IConverter {
38 public:
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 
109 
110 #endif // GAUDIKERNEL_ICONVERSIONSVC_H
The data converters are responsible to translate data from one representation into another...
Definition: IConverter.h:58
#define STATUSCODE_ENUM_DECL(ENUM)
Declare an enum to be used as StatusCode value.
Definition: StatusCode.h:239
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
DeclareInterfaceID(IConverter, 3, 0)
InterfaceID.
#define GAUDI_API
Definition: Kernel.h:71
Status
Status code definitions.
unsigned long code_t
type of StatusCode value
Definition: StatusCode.h:52