Gaudi Framework, version v22r1

Home   Generated: Mon Feb 28 2011
Public Types | Static Public Member Functions

Gaudi::InterfaceId< INTERFACE, majVers, minVers > Class Template Reference

Class to handle automatically the versioning of the interfaces when they are inheriting from other interfaces. More...

#include <IInterface.h>

List of all members.

Public Types

typedef INTERFACE iface_type
 Interface type.
typedef mpl::insert< typename
iface_type::ext_iids,
InterfaceId
iids
 List of interfaces.

Static Public Member Functions

static std::string name ()
static unsigned long majorVersion ()
static unsigned long minorVersion ()
static const std::type_infoTypeInfo ()
static const InterfaceIDinterfaceID ()

Detailed Description

template<typename INTERFACE, unsigned long majVers, unsigned long minVers>
class Gaudi::InterfaceId< INTERFACE, majVers, minVers >

Class to handle automatically the versioning of the interfaces when they are inheriting from other interfaces.

Author:
Marco Clemencic

Definition at line 122 of file IInterface.h.


Member Typedef Documentation

template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
typedef INTERFACE Gaudi::InterfaceId< INTERFACE, majVers, minVers >::iface_type

Interface type.

Definition at line 125 of file IInterface.h.

template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
typedef mpl::insert<typename iface_type::ext_iids, InterfaceId> Gaudi::InterfaceId< INTERFACE, majVers, minVers >::iids

List of interfaces.

Definition at line 129 of file IInterface.h.


Member Function Documentation

template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
static const InterfaceID& Gaudi::InterfaceId< INTERFACE, majVers, minVers >::interfaceID (  ) [inline, static]

Definition at line 145 of file IInterface.h.

    {
      static InterfaceID s_iid(name().c_str(),majVers,minVers);
      return s_iid;
    }
template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
static unsigned long Gaudi::InterfaceId< INTERFACE, majVers, minVers >::majorVersion (  ) [inline, static]

Definition at line 134 of file IInterface.h.

{return majVers;}
template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
static unsigned long Gaudi::InterfaceId< INTERFACE, majVers, minVers >::minorVersion (  ) [inline, static]

Definition at line 135 of file IInterface.h.

{return minVers;}
template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
static std::string Gaudi::InterfaceId< INTERFACE, majVers, minVers >::name (  ) [inline, static]

Definition at line 132 of file IInterface.h.

{ return System::typeinfoName(typeid(INTERFACE)); }
template<typename INTERFACE , unsigned long majVers, unsigned long minVers>
static const std::type_info& Gaudi::InterfaceId< INTERFACE, majVers, minVers >::TypeInfo (  ) [inline, static]

Definition at line 137 of file IInterface.h.

                                                 {
#ifndef __GCCXML__
      return typeid(typename iids::type);
#else
      return typeid(INTERFACE); // avoid compilation errors
#endif
    }

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 Mon Feb 28 2011 18:28:32 for Gaudi Framework, version v22r1 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004