BaseInterfaceServer Class Reference
 
 
 
BaseInterfaceServer Class Reference

This reference page is linked to from the following overview topics: About RenderItem.


#include <baseinterface.h>

Inheritance diagram for BaseInterfaceServer:
InterfaceServer MaxHeapOperators ActionCallback BezierShape Bitmap BitmapIO BitmapStorage Camera CUIFrameMgr FrameRendParams Hold IKSolver IlluminateComponents IllumParams IObject Light MacroEntry MacroRecorder ManipulatorGizmo Material ICustomRenderItem IRenderGeometry Mesh MeshDelta MeshTempData MNMesh MNTempData ModContext MouseCallBack MouseManager OsnapHit ParamBlockDesc2 Patch PatchMesh RenderGlobalContext ShadeOutput SpringSys SSSpring SubRendParams TextureInfo ViewParams

Class Description

See also:
Class InterfaceServer, Class BaseInterface

Description:
The BaseInterface server class specializes the InterfaceServer class with an implementation based on a Tab<> of interface pointers for storing interfaces, typically extension interfaces, and providing an interface iteration protocol. class IObject in the Function Publishing System specializes class BaseInterfaceServer. The class contains a protected table of BaseInterface pointers. Class IObject is an example of a class which is based on the BaseInterfaceServer class.

Public Member Functions

virtual UtilExport BaseInterface GetInterface (Interface_ID id)
virtual UtilExport int  NumInterfaces () const
virtual UtilExport BaseInterface GetInterfaceAt (int i) const
virtual UtilExport  ~BaseInterfaceServer ()

Protected Attributes

Tab< BaseInterface * >  interfaces

Constructor & Destructor Documentation

virtual UtilExport ~BaseInterfaceServer ( ) [virtual]
Remarks:
Destructor. Deletes all interfaces it keeps tracks of.

Member Function Documentation

virtual UtilExport BaseInterface* GetInterface ( Interface_ID  id ) [virtual]
Remarks:
This method returns a pointer to the BaseInterface of the specified interface.
Parameters:
Interface_ID id

The interface ID for which to return the BaseInterface.

Reimplemented from InterfaceServer.

Reimplemented in AssetUser, ITreeView, Mesh, MNMesh, MNTempData, Material, PFSimpleActionState, and PatchMesh.

virtual UtilExport int NumInterfaces ( ) const [virtual]
Remarks:
This method returns the number of interfaces.
Default Implementation:
{ return interfaces.Count(); }

Reimplemented in AssetUser, and PFSimpleActionState.

virtual UtilExport BaseInterface* GetInterfaceAt ( int  i ) const [virtual]
Remarks:
This method returns a pointer to the BaseInterface of the I-th interface.
Parameters:
int i

The index of the interface in the table.
Default Implementation:
{ return interfaces[i]; }

Reimplemented in AssetUser, and PFSimpleActionState.


Member Data Documentation