Gaudi Framework, version v21r8

Home   Generated: 17 Mar 2010

PoolDbCnvFactory< ConcreteConverter, i > Class Template Reference

Description: Implementation definition for POOL converter factories. More...

#include <PoolDb/PoolDbCnvFactory.h>

Inheritance diagram for PoolDbCnvFactory< ConcreteConverter, i >:

Inheritance graph
[legend]
Collaboration diagram for PoolDbCnvFactory< ConcreteConverter, i >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef ConcreteConverter converter_t
 Converter type.

Public Member Functions

 PoolDbCnvFactory ()
 Standard constructor.
virtual ~PoolDbCnvFactory ()
 Standard destructor.
virtual const std::stringtypeName () const
 Access to object type.
virtual const CLIDobjType () const
 Access to the class type of the converter.
virtual const long repSvcType () const
 Access to the service type of the converter.
virtual unsigned long addRef () const
virtual unsigned long release () const
virtual const std::stringident () const
virtual unsigned long addRef ()
virtual unsigned long release ()
virtual IConverterinstantiate (long typ, const CLID &, ISvcLocator *svcloc) const
 Instantiation method.
virtual IConverterinstantiate (ISvcLocator *) const
 virtual overload: Instantiate an instance of a converter
virtual IInterfaceinstantiate (IInterface *) const
 Create an instance of a generic Gaudi object: Method is disabled!

Private Attributes

std::string m_typeName
 Object type name.


Detailed Description

template<class ConcreteConverter, int i>
class PoolDbCnvFactory< ConcreteConverter, i >

Description: Implementation definition for POOL converter factories.

Author:
M.Frank
Version:
1.0

Definition at line 49 of file PoolDbCnvFactory.h.


Member Typedef Documentation

template<class ConcreteConverter, int i>
typedef ConcreteConverter PoolDbCnvFactory< ConcreteConverter, i >::converter_t

Converter type.

Definition at line 55 of file PoolDbCnvFactory.h.


Constructor & Destructor Documentation

template<class ConcreteConverter, int i>
PoolDbCnvFactory< ConcreteConverter, i >::PoolDbCnvFactory (  )  [inline]

Standard constructor.

Definition at line 58 of file PoolDbCnvFactory.h.

00058                       {
00059     m_typeName = "";
00060     FactoryTable::instance()->addFactory( this );
00061   }

template<class ConcreteConverter, int i>
virtual PoolDbCnvFactory< ConcreteConverter, i >::~PoolDbCnvFactory (  )  [inline, virtual]

Standard destructor.

Definition at line 63 of file PoolDbCnvFactory.h.

00063 {  }


Member Function Documentation

template<class ConcreteConverter, int i>
virtual const std::string& PoolDbCnvFactory< ConcreteConverter, i >::typeName (  )  const [inline, virtual]

Access to object type.

Definition at line 65 of file PoolDbCnvFactory.h.

00065                                                 {
00066     // The name MUST be set here, not in the constructor.
00067     // At construction time it is not yet clear if we run from
00068     // an executable or a DLL.
00069     if ( m_typeName == "" )  {
00070       if ( System::moduleType() == System::SHAREDLIB )  {
00071         m_typeName  = System::moduleName();
00072         m_typeName += ":";
00073       }
00074       // Get the class name using the RTTI.
00075       m_typeName += System::typeinfoName( typeid(ConcreteConverter) );
00076     }
00077     return m_typeName;
00078   }

template<class ConcreteConverter, int i>
virtual const CLID& PoolDbCnvFactory< ConcreteConverter, i >::objType (  )  const [virtual]

Access to the class type of the converter.

template<class ConcreteConverter, int i>
virtual const long PoolDbCnvFactory< ConcreteConverter, i >::repSvcType (  )  const [inline, virtual]

Access to the service type of the converter.

Definition at line 82 of file PoolDbCnvFactory.h.

00083   {    return pool::POOL_StorageType.type();  }

template<class ConcreteConverter, int i>
virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::addRef (  )  const [inline, virtual]

Definition at line 84 of file PoolDbCnvFactory.h.

00084 {     return 1;           }

template<class ConcreteConverter, int i>
virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::release (  )  const [inline, virtual]

Definition at line 85 of file PoolDbCnvFactory.h.

00085 {     return 1;           }

template<class ConcreteConverter, int i>
virtual const std::string& PoolDbCnvFactory< ConcreteConverter, i >::ident (  )  const [inline, virtual]

Definition at line 86 of file PoolDbCnvFactory.h.

00086 {     return typeName();  }

template<class ConcreteConverter, int i>
virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::addRef (  )  [inline, virtual]

Definition at line 88 of file PoolDbCnvFactory.h.

00088 {     return 1;           }

template<class ConcreteConverter, int i>
virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::release (  )  [inline, virtual]

Definition at line 89 of file PoolDbCnvFactory.h.

00089 {     return 1;           }

template<class ConcreteConverter, int i>
virtual IConverter* PoolDbCnvFactory< ConcreteConverter, i >::instantiate ( long  typ,
const CLID ,
ISvcLocator svcloc 
) const [inline, virtual]

Instantiation method.

Parameters:
typ [IN] Storage type of the converter to be created
clid [IN] Class identifier of the converter
svcloc [IN] Pointer to service locator object
Returns:
Pointer to created converter object.

Definition at line 99 of file PoolDbCnvFactory.h.

00102   {    return new ConcreteConverter(typ, svcloc);  }

template<class ConcreteConverter, int i>
virtual IConverter* PoolDbCnvFactory< ConcreteConverter, i >::instantiate ( ISvcLocator  )  const [inline, virtual]

virtual overload: Instantiate an instance of a converter

Definition at line 105 of file PoolDbCnvFactory.h.

00106   {    return 0;  }

template<class ConcreteConverter, int i>
virtual IInterface* PoolDbCnvFactory< ConcreteConverter, i >::instantiate ( IInterface  )  const [inline, virtual]

Create an instance of a generic Gaudi object: Method is disabled!

Definition at line 109 of file PoolDbCnvFactory.h.

00110   {    return 0;  }


Member Data Documentation

template<class ConcreteConverter, int i>
std::string PoolDbCnvFactory< ConcreteConverter, i >::m_typeName [mutable, private]

Object type name.

Definition at line 52 of file PoolDbCnvFactory.h.


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

Generated at Wed Mar 17 18:18:51 2010 for Gaudi Framework, version v21r8 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004