00001 // $Header: /nfs/slac/g/glast/ground/cvs/GaudiKernel/GaudiKernel/IClassManager.h,v 1.1.1.1 2001/04/18 18:14:18 tlindner Exp $ 00002 #ifndef GAUDIKERNEL_ICLASSMANAGER_H 00003 #define GAUDIKERNEL_ICLASSMANAGER_H 00004 00005 // Include files 00006 #include "GaudiKernel/IInterface.h" 00007 #include <string> 00008 00009 // Forward class declaration 00010 class IFactory; 00011 class ISvcLocator; 00012 00013 00014 // Declaration of the interface ID ( interface id, major version, minor version) 00015 static const InterfaceID IID_IClassManager(16, 1 , 0); 00016 00024 class IClassManager : virtual public IInterface { 00025 public: 00026 00028 static const InterfaceID& interfaceID() { return IID_IClassManager; } 00029 00031 virtual StatusCode declareFactory( const IFactory& factory // Reference to the abstract factory 00032 ) = 0; 00034 virtual StatusCode loadModule( const std::string& module ) = 0; // Shareable library name 00035 }; 00036 00037 #endif // GAUDIKERNEL_ICLASSMANAGER_H
1.2.3 written by Dimitri van Heesch,
© 1997-2000