CrystalSpace

Public API Reference

Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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 CS_FORCEINLINE char
const * 
GetName ()
 Retrieve the interface's name as a string.
static scfInterfaceVersion GetVersion ()
 Retrieve the interface's current version number.


Detailed Description

template<class 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 366 of file scf_interface.h.


Member Function Documentation

template<class 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 384 of file scf_interface.h.

References iSCF::GetInterfaceID(), scfInterfaceTraits< Interface >::GetName(), and iSCF::SCF.

Referenced by csTypedObjectIterator< T >::csTypedObjectIterator().

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

Retrieve the interface's name as a string.

Definition at line 398 of file scf_interface.h.

Referenced by scfInterfaceTraits< Interface >::GetID().

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

Retrieve the interface's current version number.

Definition at line 372 of file scf_interface.h.

Referenced by csTypedObjectIterator< T >::csTypedObjectIterator().


The documentation for this class was generated from the following file:
Generated for Crystal Space by doxygen 1.4.4