Gaudi Framework, version v23r2

Home   Generated: Thu Jun 28 2012

IIoComponentMgr.h

Go to the documentation of this file.
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
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Thu Jun 28 2012 23:27:20 for Gaudi Framework, version v23r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004