Gaudi Framework, version v22r2

Home   Generated: Tue May 10 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 >:
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.

                      {
    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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Tue May 10 2011 18:55:03 for Gaudi Framework, version v22r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004