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

IConversionSvc.h

Go to the documentation of this file.
00001 // $Header: /nfs/slac/g/glast/ground/cvs/GaudiKernel/GaudiKernel/IConversionSvc.h,v 1.1.1.1 2001/04/18 18:14:18 tlindner Exp $
00002 #ifndef GAUDIKERNEL_ICONVERSIONSVC_H
00003 #define GAUDIKERNEL_ICONVERSIONSVC_H
00004 
00005 // Include files
00006 #include <string>
00007 
00008 #include "GaudiKernel/Kernel.h"
00009 #include "GaudiKernel/ClassID.h"
00010 #include "GaudiKernel/IInterface.h"
00011 
00012 // Forward declarations
00013 // Generic interface to data object class
00014 class DataObject;
00015 class IConverter;
00016 class ICnvFactory;
00017 class IDataSelector;
00018 class IOpaqueAddress;
00019 class IDataProviderSvc;
00020 class IAddressCreator;
00021 class GenericLink;
00022 
00023 // Declaration of the interface ID ( interface id, major version, minor version) 
00024 static const InterfaceID IID_IConversionSvc(10, 1 , 0); 
00025 
00026 
00049 class IConversionSvc  : virtual public IInterface       {
00050 public:
00052   static const InterfaceID& interfaceID() { return IID_IConversionSvc; }
00053 
00058   virtual unsigned char repSvcType() const = 0;
00059 
00072   virtual StatusCode createObj(IOpaqueAddress* pAddress, DataObject*& refpObject) = 0;
00073 
00085   virtual StatusCode updateObj(IOpaqueAddress* pAddress, DataObject* pObject) = 0;
00086 
00099   virtual StatusCode updateReps(IDataSelector* pSelector) = 0;
00100 
00110   virtual StatusCode createReps(IDataSelector* pSelector) = 0;
00111 
00116   virtual StatusCode setStore(IDataProviderSvc* pStore) = 0;
00117 
00122   virtual StatusCode addConverter(IConverter* pConverter) = 0;
00123 
00129   virtual StatusCode addConverter(const ICnvFactory& refFactory) = 0;
00130 
00136   virtual StatusCode removeConverter(const CLID& clid) = 0;
00137 
00142   virtual StatusCode connectOutput(const std::string& outputFile) = 0;
00143 
00148   virtual StatusCode setAddressCreator(IAddressCreator* creator) = 0;
00149 
00151   enum Status  {
00153    CONVERSIONSVC_NO_ERROR = StatusCode::SUCCESS,
00155    NO_CONVERTER,
00157    NO_MEMORY,
00159    BAD_STORAGE_TYPE
00160   };
00161 };
00162 
00163 #endif // GAUDIKERNEL_ICONVERSIONSVC_H

Generated at Wed Nov 21 12:22:03 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000