| # Gaudi Framework, version v21r7 |

Home |  | Generated: 22 Jan 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 >:

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

[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::string & | typeName () const
| Access to object type.
virtual const CLID & | objType () 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::string & | ident () const
virtual unsigned long | addRef ()
virtual unsigned long | release ()
virtual IConverter * | instantiate (long typ, const CLID &, ISvcLocator *svcloc) const
| Instantiation method.
virtual IConverter * | instantiate (ISvcLocator *) const
| virtual overload: Instantiate an instance of a converter
virtual IInterface * | instantiate (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:

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v21r7/GaudiPoolDb/GaudiPoolDb/PoolDbCnvFactory.h