![]() |
The Gaudi Framework
master (bdbe7744)
|
Definition of the basic interface. More...
#include <GaudiKernel/IInterface.h>

Public Types | |
| enum class | Status : StatusCode::code_t { FAILURE = 0 , SUCCESS = 1 , NO_INTERFACE , VERSMISMATCH , LAST_ERROR } |
| Return status. More... | |
| using | iid = Gaudi::InterfaceId<IInterface, 0, 0> |
| Interface ID. | |
| using | ext_iids = Gaudi::interface_list<iid> |
| Extra interfaces. | |
Public Member Functions | |
| template<Gaudi::IsInterface TARGET> | |
| TARGET * | cast () |
| template<Gaudi::IsInterface TARGET> | |
| TARGET const * | cast () const |
| template<typename TARGET> requires ( !Gaudi::IsInterface<TARGET> ) | |
| TARGET * | cast () |
| template<typename TARGET> requires ( !Gaudi::IsInterface<TARGET> ) | |
| TARGET const * | cast () const |
| virtual std::vector< std::string > | getInterfaceNames () const =0 |
| Returns a vector of strings containing the names of all the implemented interfaces. | |
| virtual unsigned long | addRef () const =0 |
| Increment the reference count of Interface instance. | |
| virtual unsigned long | release () const =0 |
| Release Interface instance. | |
| virtual unsigned long | refCount () const =0 |
| Current reference count. | |
| virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp)=0 |
| Set the void** to the pointer to the requested interface of the instance. | |
| virtual | ~IInterface ()=default |
| Virtual destructor. | |
| virtual void const * | i_cast (const InterfaceID &) const =0 |
| void * | i_cast (const InterfaceID &iidiid) |
Static Public Member Functions | |
| static const InterfaceID & | interfaceID () |
| Return an instance of InterfaceID identifying the interface. | |
Protected Member Functions | |
| virtual unsigned long | decRef () const =0 |
| Decrement reference count and return the new reference count. | |
Definition of the basic interface.
Definition at line 225 of file IInterface.h.
| using IInterface::ext_iids = Gaudi::interface_list<iid> |
Extra interfaces.
Definition at line 231 of file IInterface.h.
| using IInterface::iid = Gaudi::InterfaceId<IInterface, 0, 0> |
Interface ID.
Definition at line 228 of file IInterface.h.
|
strong |
Return status.
| Enumerator | |
|---|---|
| FAILURE | Failure. |
| SUCCESS | Normal successful completion. |
| NO_INTERFACE | Requested interface is not available. |
| VERSMISMATCH | Requested interface version is incompatible. |
| LAST_ERROR | Last error. |
Definition at line 307 of file IInterface.h.
|
virtualdefault |
Virtual destructor.
|
pure virtual |
Increment the reference count of Interface instance.
|
inline |
Definition at line 280 of file IInterface.h.
|
inline |
Definition at line 237 of file IInterface.h.
|
inline |
Definition at line 286 of file IInterface.h.
|
inline |
Definition at line 258 of file IInterface.h.
|
protectedpure virtual |
Decrement reference count and return the new reference count.
|
pure virtual |
Returns a vector of strings containing the names of all the implemented interfaces.
|
pure virtual |
|
inline |
Definition at line 327 of file IInterface.h.
|
inlinestatic |
Return an instance of InterfaceID identifying the interface.
Definition at line 234 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.