![]() |
The Gaudi Framework
v25r3
|
The IFactory is the interface used to create contrete instances of Objectes. More...
#include <GaudiKernel/IFactory.h>
Public Member Functions | |
DeclareInterfaceID (IFactory, 2, 0) | |
InterfaceID. More... | |
virtual IInterface * | instantiate (IInterface *parent) const =0 |
Instantiate an instance of a Gaudi class. More... | |
virtual unsigned long | addRef () const =0 |
virtual unsigned long | release () const =0 |
virtual unsigned long | addRef ()=0 |
Re-declaring these here avoids a compiler warning about hidden functions. More... | |
virtual unsigned long | release ()=0 |
Release Interface instance. More... | |
virtual const std::string & | ident () const =0 |
![]() | |
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 | 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 () |
Virtual destructor. More... | |
Additional Inherited Members | |
![]() | |
enum | Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR } |
Return status. More... | |
typedef Gaudi::InterfaceId < IInterface, 0, 0 > | iid |
Interface ID. More... | |
typedef mpl::set1< iid > | ext_iids |
Extra interfaces. More... | |
![]() | |
static const InterfaceID & | interfaceID () |
Return an instance of InterfaceID identifying the interface. More... | |
The IFactory is the interface used to create contrete instances of Objectes.
It can be used to create Services, Algorithms, Converters, ...
Definition at line 17 of file IFactory.h.
|
pure virtual |
|
pure virtual |
Re-declaring these here avoids a compiler warning about hidden functions.
Refer to ARM Page 210. Increment the reference count of Interface instance
Implements IInterface.
IFactory::DeclareInterfaceID | ( | IFactory | , |
2 | , | ||
0 | |||
) |
|
pure virtual |
|
pure virtual |
Instantiate an instance of a Gaudi class.
|
pure virtual |
|
pure virtual |
Release Interface instance.
Implements IInterface.