| # Gaudi Framework, version v22r4 |

Home |  | Generated: Fri Sep 2 2011

Public Types | Public Member Functions | Private Attributes

# 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.

                          {
        m_typeName = "";
        FactoryTable::instance()->addFactory( this );
      }

template<class ConcreteConverter , int i>

virtual PoolDbCnvFactory< ConcreteConverter, i >::~PoolDbCnvFactory | ( | ) | `[inline, virtual]`

Standard destructor.

Definition at line 63 of file PoolDbCnvFactory.h.

    {  }

## Member Function Documentation

template<class ConcreteConverter , int i>

virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::addRef | ( | ) | const`[inline, virtual]`

Definition at line 84 of file PoolDbCnvFactory.h.

    {     return 1;           }

template<class ConcreteConverter , int i>

virtual unsigned long PoolDbCnvFactory< ConcreteConverter, i >::addRef | ( | ) | `[inline, virtual]`

Definition at line 88 of file PoolDbCnvFactory.h.

    {     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.

    {     return typeName();  }

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.

      {    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.

      {    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.

      {    return 0;  }

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 unsigned long PoolDbCnvFactory< ConcreteConverter, i >::release | ( | ) | `[inline, virtual]`

Definition at line 89 of file PoolDbCnvFactory.h.

    {     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.

    {     return 1;           }

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.

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

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.

                                                    {
        // The name MUST be set here, not in the constructor.
        // At construction time it is not yet clear if we run from
        // an executable or a DLL.
        if ( m_typeName == "" )  {
          if ( System::moduleType() == System::SHAREDLIB )  {
            m_typeName  = System::moduleName();
            m_typeName += ":";
          }
          // Get the class name using the RTTI.
          m_typeName += System::typeinfoName( typeid(ConcreteConverter) );
        }
        return m_typeName;
      }

## 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_v22r4/GaudiPoolDb/GaudiPoolDb/PoolDbCnvFactory.h

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines