|
Gaudi Framework, version v23r2 |
| Home | Generated: Thu Jun 28 2012 |
00001 // $Header: /tmp/svngaudi/tmp.jEpFh25751/Gaudi/GaudiKernel/GaudiKernel/IFactory.h,v 1.4 2001/02/23 16:12:10 dquarrie Exp $ 00002 #ifndef GAUDIKERNEL_IFACTORY_H 00003 #define GAUDIKERNEL_IFACTORY_H 00004 00005 // Include files 00006 #include "GaudiKernel/IInterface.h" 00007 #include <string> 00008 #include <vector> 00009 00017 class GAUDI_API IFactory: virtual public IInterface { 00018 public: 00020 DeclareInterfaceID(IFactory,2,0); 00021 00023 virtual IInterface* instantiate( IInterface *parent ) const = 0; 00024 virtual unsigned long addRef() const = 0; 00025 virtual unsigned long release() const = 0; 00026 00030 virtual unsigned long addRef() = 0; 00032 virtual unsigned long release() = 0; 00033 00034 virtual const std::string& ident() const = 0; 00035 00036 }; 00037 00038 #endif // GAUDIKERNEL_IFACTORY_H