CrystalSpace

Public API Reference

scfInterfaceTraits< Interface > Class Template Reference
[Shared Class Facility (SCF)]

Interface information query class. More...

#include <csutil/scf_interface.h>

List of all members.

Static Public Member Functions

static scfInterfaceID GetID ()
 Retrieve the interface's identifier.
static char const * GetName ()
 Retrieve the interface's name as a string.
static scfInterfaceVersion GetVersion ()
 Retrieve the interface's current version number.

Detailed Description

template<typename Interface>
class scfInterfaceTraits< Interface >

Interface information query class.

This template class allows you to query static information about SCF interfaces, such as an interface's current version number. For example, to find out the version number of the iFooBar SCF interface, you would invoke scfInterfaceTraits<iFooBar>::GetVersion(). For old-style interfaces it is specialized through SCF_VERSION macro, with new style interfaces no specialization is needed.

Definition at line 447 of file scf_interface.h.


Member Function Documentation

template<typename Interface >
static scfInterfaceID scfInterfaceTraits< Interface >::GetID (  )  [inline, static]

Retrieve the interface's identifier.

This is a unique identifier by which SCF recognizes the interface. Although human's prefer to identify interfaces symbolically via name, SCF perfers to identify them, for performance reasons, by scfInterfaceID, which is typically a small integer.

Definition at line 468 of file scf_interface.h.

template<typename Interface >
static char const* scfInterfaceTraits< Interface >::GetName (  )  [inline, static]

Retrieve the interface's name as a string.

Definition at line 482 of file scf_interface.h.

template<typename Interface >
static scfInterfaceVersion scfInterfaceTraits< Interface >::GetVersion (  )  [inline, static]

Retrieve the interface's current version number.

Definition at line 456 of file scf_interface.h.


The documentation for this class was generated from the following file:

Generated for Crystal Space 2.1 by doxygen 1.6.1