![]() |
The Gaudi Framework
master (ff829712)
|
Base class used to implement the interfaces. More...
#include </builds/gaudi/Gaudi/GaudiKernel/include/GaudiKernel/implements.h>
Public Types | |
using | base_class = implements<Interfaces...> |
Typedef to this class. | |
using | extend_interfaces_base = extend_interfaces<Interfaces...> |
Typedef to the base of this class. | |
using | iids = typename extend_interfaces_base::ext_iids |
![]() | |
using | ext_iids |
take union of the ext_iids of all Interfaces... | |
Public Member Functions | |
void const * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. | |
implements ()=default | |
Default constructor. | |
implements (const implements &) | |
Copy constructor (zero the reference count) | |
implements & | operator= (const implements &) |
Assignment operator (do not touch the reference count). | |
unsigned long | addRef () const override |
Reference Interface instance. | |
unsigned long | release () const override |
Release Interface instance. | |
unsigned long | refCount () const override |
Current reference count. | |
Protected Member Functions | |
unsigned long | decRef () const override |
Protected Attributes | |
std::atomic_ulong | m_refCount = { 0 } |
Reference counter. | |
Base class used to implement the interfaces.
Definition at line 19 of file implements.h.
using implements< Interfaces >::base_class = implements<Interfaces...> |
Typedef to this class.
Definition at line 21 of file implements.h.
using implements< Interfaces >::extend_interfaces_base = extend_interfaces<Interfaces...> |
Typedef to the base of this class.
Definition at line 23 of file implements.h.
using implements< Interfaces >::iids = typename extend_interfaces_base::ext_iids |
Definition at line 24 of file implements.h.
|
default |
Default constructor.
|
inline |
Copy constructor (zero the reference count)
Definition at line 42 of file implements.h.
|
inlineoverride |
|
inlineoverrideprotected |
Definition at line 62 of file implements.h.
|
inlineoverride |
Implementation of IInterface::getInterfaceNames.
Definition at line 38 of file implements.h.
|
inlineoverride |
Implementation of IInterface::i_cast.
Definition at line 28 of file implements.h.
|
inline |
Assignment operator (do not touch the reference count).
Definition at line 44 of file implements.h.
|
inlineoverride |
Implementation of IInterface::queryInterface.
Definition at line 30 of file implements.h.
|
inlineoverride |
|
inlineoverride |
Release Interface instance.
Definition at line 50 of file implements.h.
|
mutableprotected |