CrystalSpace

Public API Reference

scfImplementation7< Class, I1, I2, I3, I4, I5, I6, I7 > Class Template Reference

Base class for an SCF class implementation with the given number of interfaces. More...

#include <csutil/scf_implgen.h>

Inheritance diagram for scfImplementation7< Class, I1, I2, I3, I4, I5, I6, I7 >:

List of all members.

Public Member Functions

void * QueryInterface (scfInterfaceID id, scfInterfaceVersion version)
 Query a particular interface implemented by this object.

Detailed Description

template<class Class, class I1, class I2, class I3, class I4, class I5, class I6, class I7>
class scfImplementation7< Class, I1, I2, I3, I4, I5, I6, I7 >

Base class for an SCF class implementation with the given number of interfaces.

iBase is implicitly implemented and available. Class is the declared class.

Typical usage:

 class MyPlugin : public scfImplementation1<MyPlugin, iComponent>
 {
 public:
   // ... iComponent methods ... 
 };

Definition at line 1524 of file scf_implgen.h.


Member Function Documentation

template<class Class, class I1, class I2, class I3, class I4, class I5, class I6, class I7>
void* scfImplementation7< Class, I1, I2, I3, I4, I5, I6, I7 >::QueryInterface ( scfInterfaceID  iInterfaceID,
scfInterfaceVersion  iVersion 
) [inline, virtual]

Query a particular interface implemented by this object.

You are _not_ allowed to cast this to anything but a pointer to this interface (not even iBase). Use scfQueryInterface<interface> instead of using this method directly. Thread-safe - it is possible to query interfaces from different threads at the same time.

Reimplemented from scfImplementation< Class >.

Definition at line 1529 of file scf_implgen.h.


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

Generated for Crystal Space 2.0 by doxygen 1.6.1