Gaudi Framework, version v23r6

Home   Generated: Wed Jan 30 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | List of all members
IFactory Class Referenceabstract

The IFactory is the interface used to create contrete instances of Objectes. More...

#include <GaudiKernel/IFactory.h>

Inheritance diagram for IFactory:
Inheritance graph
[legend]
Collaboration diagram for IFactory:
Collaboration graph
[legend]

Public Member Functions

 DeclareInterfaceID (IFactory, 2, 0)
 InterfaceID.
 
virtual IInterfaceinstantiate (IInterface *parent) const =0
 Instantiate an instance of a Gaudi class.
 
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.
 
virtual unsigned long release ()=0
 Release Interface instance.
 
virtual const std::stringident () const =0
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function
 
virtual std::vector< std::stringgetInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces.
 
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 ()
 Virtual destructor.
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
 Return status. More...
 
typedef Gaudi::InterfaceId
< IInterface, 0, 0 > 
iid
 Interface ID.
 
typedef mpl::set1< iidext_iids
 Extra interfaces.
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface.
 

Detailed Description

The IFactory is the interface used to create contrete instances of Objectes.

It can be used to create Services, Algorithms, Converters, ...

Author
Pere Mato

Definition at line 17 of file IFactory.h.

Member Function Documentation

virtual unsigned long IFactory::addRef ( ) const
pure virtual
virtual unsigned long IFactory::addRef ( )
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  ,
,
 
)
virtual const std::string& IFactory::ident ( ) const
pure virtual
virtual IInterface* IFactory::instantiate ( IInterface parent) const
pure virtual

Instantiate an instance of a Gaudi class.

virtual unsigned long IFactory::release ( ) const
pure virtual
virtual unsigned long IFactory::release ( )
pure virtual

Release Interface instance.

Implements IInterface.


The documentation for this class was generated from the following file:

Generated at Wed Jan 30 2013 17:13:46 for Gaudi Framework, version v23r6 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004