Gaudi Framework, version v24r2

Home   Generated: Wed Dec 4 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Types | Static Public Member Functions | List of all members
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>

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 121 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 124 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 128 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 ( )
inlinestatic

Definition at line 144 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 ( )
inlinestatic

Definition at line 133 of file IInterface.h.

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

Definition at line 134 of file IInterface.h.

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

Definition at line 131 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 ( )
inlinestatic

Definition at line 136 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:

Generated at Wed Dec 4 2013 14:33:20 for Gaudi Framework, version v24r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004