|
Gaudi Framework, version v23r2 |
| Home | Generated: Thu Jun 28 2012 |
00001 00002 // IIoComponentMgr.h 00003 // Header file for class IIoComponentMgr 00004 // Author: S.Binet<binet@cern.ch> 00006 #ifndef GAUDIKERNEL_IIOCOMPONENTMGR_H 00007 #define GAUDIKERNEL_IIOCOMPONENTMGR_H 1 00008 00012 // STL includes 00013 #include <string> 00014 00015 // GaudiKernel includes 00016 #include "GaudiKernel/INamedInterface.h" 00017 #include "GaudiKernel/StatusCode.h" 00018 00019 // forward declare 00020 class IIoComponent; 00021 00022 class GAUDI_API IIoComponentMgr : virtual public INamedInterface 00023 { 00024 public: 00025 DeclareInterfaceID(IIoComponentMgr,1,0); 00026 00028 // Public enums: 00030 public: 00031 struct IoMode { 00032 enum Type { 00033 Input = 0, 00034 Output 00035 }; 00036 }; 00037 00039 // Public methods: 00041 public: 00042 00045 virtual ~IIoComponentMgr(); 00046 00053 virtual 00054 StatusCode io_register (IIoComponent* iocomponent) = 0; 00055 00062 virtual 00063 StatusCode io_register (IIoComponent* iocomponent, 00064 IIoComponentMgr::IoMode::Type iomode, 00065 const std::string& fname) = 0; 00066 00069 virtual 00070 bool io_hasitem (IIoComponent* iocomponent) const = 0; 00071 00075 virtual 00076 bool io_contains (IIoComponent* iocomponent, 00077 const std::string& fname) const = 0; 00078 00082 virtual 00083 StatusCode io_retrieve (IIoComponent* iocomponent, 00084 std::string& fname) = 0; 00085 00090 virtual 00091 StatusCode io_reinitialize () = 0; 00092 00097 virtual 00098 StatusCode io_finalize () = 0; 00099 00100 }; 00101 00102 00103 #endif //> !GAUDIKERNEL_IIOCOMPONENTMGR_H