#include <GaudiKernel/IInterface.h>
Inheritance diagram for IInterface:

Public Types | |
| enum | Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR } |
| Return status. More... | |
Public Methods | |
| virtual StatusCode | queryInterface (const InterfaceID& riid, void** ppvInterface) = 0 |
| Query interfaces of Interface. More... | |
| virtual unsigned long | addRef () = 0 |
| Increment the reference count of Interface instance. | |
| virtual unsigned long | release () = 0 |
| Release Interface instance. | |
Static Public Methods | |
| const InterfaceID& | interfaceID () |
| Retrieve interface ID. More... | |
Definition at line 65 of file IInterface.h.
|
|
Return status.
Reimplemented in IConversionSvc, IConverter, IDataManagerSvc, and IDataProviderSvc. Definition at line 83 of file IInterface.h. |
|
|
Increment the reference count of Interface instance.
Reimplemented in AlgFactory, Algorithm, AlgTool, AudFactory, Auditor, CnvFactoryBase, Converter, IFactory, ObjectFactoryBase, PropertyMgr, SelectStatement, Service, SvcFactory, and ToolFactory. Referenced by Converter::Converter(), Rndm::Numbers::Numbers(), ConversionSvc::addConverter(), NTuple::TupleImp::attachSelector(), Rndm::Numbers::initialize(), SmartIF< IInterface >::operator=(), SmartIF::operator=(), SelectStatement::queryInterface(), ObjectFactory2::queryInterface(), ObjectFactory::queryInterface(), DataObjectFactory::queryInterface(), ContainedObjectFactory::queryInterface(), and DataSvc::setDataLoader(). |
|
|
Retrieve interface ID.
Reimplemented in IAddressCreator, IAlgFactory, IAlgManager, IAlgorithm, IAlgTool, IAppMgrUI, IAuditor, IAuditorFactory, IAuditorSvc, IChronoStatSvc, IClassManager, ICnvFactory, ICnvManager, IConversionSvc, IConverter, IDataManagerSvc, IDataProviderSvc, IDataSourceMgr, IEventProcessor, IEvtSelector, IFactory, IGiGaSetUpSvc, IGiGaSvc, IHistogramSvc, IIncidentListener, IIncidentSvc, IJobOptionsSvc, IMagneticFieldSvc, IMessageSvc, INTupleSvc, IDataObjectFactory, IContainedObjectFactory, IObjManager, IParticlePropertySvc, IPersistencySvc, IProperty, IRndmEngine, IRndmGen, IRndmGenFactory, IRndmGenSvc, IRunable, IScriptingSvc, ISelectStatement, ISerialize, IService, ISvcFactory, ISvcLocator, ISvcManager, IToolFactory, and IToolSvc. Definition at line 68 of file IInterface.h. |
|
|
Query interfaces of Interface.
Referenced by Gaudi::createApplicationMgrEx(), Gaudi::createInstance(), SmartIF::operator=(), ObjectFactory2::queryInterface(), ObjectFactory::queryInterface(), DataObjectFactory::queryInterface(), ContainedObjectFactory::queryInterface(), Service::service(), Auditor::service(), Algorithm::service(), and Gaudi::svcLocator(). |
|
|
Release Interface instance.
Reimplemented in AlgFactory, Algorithm, AlgTool, AudFactory, Auditor, CnvFactoryBase, Converter, IFactory, ObjectFactoryBase, PropertyMgr, SelectStatement, Service, SvcFactory, and ToolFactory. Referenced by ConversionSvc::addConverter(), Service::finalize(), Rndm::Numbers::finalize(), SmartIFBase::releaseInterface(), DataSvc::setDataLoader(), and Converter::~Converter(). |
1.2.3 written by Dimitri van Heesch,
© 1997-2000