![]() |
The Gaudi Framework
v29r3 (fa547fc2)
|
Definition of the basic interface. More...
#include <GaudiKernel/IInterface.h>
Inherited by Gaudi::IFileCatalog [virtual], Gaudi::IFileCatalogMgr [virtual], Gaudi::IIODataManager [virtual], Gaudi::ISignalMonitor [virtual], IAccelerator [virtual], IAddressCreator [virtual], IAlgContextSvc [virtual], IAlgExecStateSvc [virtual], IAlgResourcePool [virtual], IChronoSvc [virtual], IClassManager [virtual], IConverter [virtual], ICounterSvc [virtual], IDataManagerSvc [virtual], IDataProviderSvc [virtual], IDataSourceMgr [virtual], IDetDataSvc [virtual], IEventProcessor [virtual], IEvtSelector [virtual], IExceptionSvc [virtual], IFileAccess [virtual], IHiveWhiteBoard [virtual], IInactiveMessageCounter [virtual], IIncidentListener [virtual], IIncidentSvc [virtual], IInspector [virtual], IJobOptionsSvc [virtual], IMessageSvc [virtual], IMonitorSvc [virtual], INamedInterface [virtual], IPartitionControl [virtual], IPersistencySvc [virtual], IPrecedenceSvc [virtual], IProperty [virtual], IPublishSvc [virtual], IRndmEngine [virtual], IRndmGen [virtual], IRunable [virtual], IScheduler [virtual], IScheduler [virtual], ISelectStatement [virtual], ISerialize [virtual], IStagerSvc [virtual], IStateful [virtual], IStatSvc [virtual], ISvcLocator [virtual], IThreadPoolSvc [virtual], IToolSvc [virtual], IUpdateableIF [virtual], and IUpdateManagerSvc [virtual].
Public Types | |
| enum | Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR } |
| Return status. More... | |
| using | iid = Gaudi::InterfaceId< IInterface, 0, 0 > |
| Interface ID. More... | |
| using | ext_iids = Gaudi::interface_list< iid > |
| Extra interfaces. More... | |
Public Member Functions | |
| virtual void * | i_cast (const InterfaceID &) const =0 |
| main cast function More... | |
| virtual std::vector< std::string > | getInterfaceNames () const =0 |
| Returns a vector of strings containing the names of all the implemented interfaces. More... | |
| virtual unsigned long | addRef ()=0 |
| Increment the reference count of Interface instance. More... | |
| virtual unsigned long | release ()=0 |
| Release Interface instance. More... | |
| virtual unsigned long | refCount () const =0 |
| Current reference count. More... | |
| virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp)=0 |
| Set the void** to the pointer to the requested interface of the instance. More... | |
| virtual | ~IInterface ()=default |
| Virtual destructor. More... | |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| Return an instance of InterfaceID identifying the interface. More... | |
Definition of the basic interface.
Definition at line 277 of file IInterface.h.
| using IInterface::ext_iids = Gaudi::interface_list<iid> |
Extra interfaces.
Definition at line 284 of file IInterface.h.
| using IInterface::iid = Gaudi::InterfaceId<IInterface, 0, 0> |
Interface ID.
Definition at line 281 of file IInterface.h.
| enum IInterface::Status |
Return status.
| Enumerator | |
|---|---|
| SUCCESS |
Normal successful completion. |
| NO_INTERFACE |
Requested interface is not available. |
| VERSMISMATCH |
Requested interface version is incompatible. |
| LAST_ERROR |
Last error. |
Definition at line 331 of file IInterface.h.
|
virtualdefault |
Virtual destructor.
|
pure virtual |
Increment the reference count of Interface instance.
|
pure virtual |
Returns a vector of strings containing the names of all the implemented interfaces.
|
pure virtual |
main cast function
|
inlinestatic |
Return an instance of InterfaceID identifying the interface.
Definition at line 287 of file IInterface.h.
|
pure virtual |
Set the void** to the pointer to the requested interface of the instance.
|
pure virtual |
Current reference count.
|
pure virtual |
Release Interface instance.