![]() |
The Gaudi Framework
master (98f5f38d)
|
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. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces... > |
Typedef to the base of this class. More... | |
using | iids = typename extend_interfaces_base::ext_iids |
![]() | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids... >::type |
take union of the ext_iids of all Interfaces... More... | |
Public Member Functions | |
void const * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
implements ()=default | |
Default constructor. More... | |
implements (const implements &) | |
Copy constructor (zero the reference count) More... | |
implements & | operator= (const implements &) |
Assignment operator (do not touch the reference count). More... | |
unsigned long | addRef () const override |
Reference Interface instance More... | |
unsigned long | release () const override |
Release Interface instance More... | |
unsigned long | refCount () const override |
Current reference count More... | |
Protected Member Functions | |
unsigned long | decRef () const override |
Protected Attributes | |
std::atomic_ulong | m_refCount = { 0 } |
Reference counter More... | |
Base class used to implement the interfaces.
Definition at line 20 of file implements.h.
using implements< Interfaces >::base_class = implements<Interfaces...> |
Typedef to this class.
Definition at line 22 of file implements.h.
using implements< Interfaces >::extend_interfaces_base = extend_interfaces<Interfaces...> |
Typedef to the base of this class.
Definition at line 24 of file implements.h.
using implements< Interfaces >::iids = typename extend_interfaces_base::ext_iids |
Definition at line 25 of file implements.h.
|
default |
Default constructor.
|
inline |
|
inlineoverride |
|
inlineoverrideprotected |
Definition at line 63 of file implements.h.
|
inlineoverride |
|
inlineoverride |
|
inline |
Assignment operator (do not touch the reference count).
Definition at line 45 of file implements.h.
|
inlineoverride |
|
inlineoverride |
|
inlineoverride |
|
mutableprotected |
Reference counter
Definition at line 74 of file implements.h.