Public Member Functions | Public Attributes

MSSpecialFXXtnd< TYPE, MS_SUPER > Class Template Reference

Search for all occurrences

template<class TYPE, class MS_SUPER>
class MSSpecialFXXtnd< TYPE, MS_SUPER >

#include <mxsPlugin.h>

List of all members.

Public Member Functions

void  DeleteThis ()
ReferenceTarget get_delegate ()
void  GetClassName (MSTR &s)
Class_ID  ClassID ()
void  FreeCaches ()
int  NumSubs ()
Animatable SubAnim (int i)
MSTR  SubAnimName (int i)
int  NumParamBlocks ()
IParamBlock2 GetParamBlock (int i)
IParamBlock2 GetParamBlockByID (BlockID id)
void *  GetInterface (ULONG id)
virtual BaseInterface GetInterface (Interface_ID id)
int  NumRefs ()
RefTargetHandle  GetReference (int i)
void  SetReference (int i, RefTargetHandle rtarg)
BOOL  Active (TimeValue t)
void  Update (TimeValue t, Interval &valid)
int  NumGizmos ()
INode GetGizmo (int i)
void  DeleteGizmo (int i)
void  AppendGizmo (INode *node)
BOOL  OKGizmo (INode *node)
void  EditGizmo (INode *node)

Public Attributes

TYPE *  delegate

Member Function Documentation

void DeleteThis ( )
ReferenceTarget* get_delegate ( ) [inline]
void GetClassName ( MSTR s ) [inline]
{ s = MSTR(pc->class_name->to_string()); }  
Class_ID ClassID ( ) [inline]
{ return pc->class_id; }
void FreeCaches ( ) [inline]
int NumSubs ( ) [inline]
{ return pblocks.Count() + 1; }  
Animatable* SubAnim ( int  i ) [inline]
{ if (i == 0) { return delegate; } else return pblocks[i-1]; }
MSTR SubAnimName ( int  i ) [inline]
{ if (i == 0) { MSTR n; delegate->GetClassName(n); return n; } else return pblocks[i-1]->GetLocalName(); }
int NumParamBlocks ( ) [inline]
{ return pblocks.Count(); }
IParamBlock2* GetParamBlock ( int  i ) [inline]
{ return pblocks[i]; }
IParamBlock2* GetParamBlockByID ( BlockID  id ) [inline]
void* GetInterface ( ULONG  id ) [inline]
{ if (id == I_MAXSCRIPTPLUGIN) return (MSPlugin*)this; else return MS_SUPER::GetInterface(id); }
virtual BaseInterface* GetInterface ( Interface_ID  id ) [inline, virtual]
                                                        { 
        // GetInterface(Interface_ID) was added after the MAX 4
        // SDK shipped. This did not break the SDK because
        // it only calls the base class implementation. If you add
        // any other code here, plugins compiled with the MAX 4 SDK
        // that derive from MSSpecialFXXtnd and call Base class
        // implementations of GetInterface(Interface_ID), will not call
        // that code in this routine. This means that the interface
        // you are adding will not be exposed for these objects,
        // and could have unexpected results.
        return MS_SUPER::GetInterface(id); 
    }
int NumRefs ( )
RefTargetHandle GetReference ( int  i )
void SetReference ( int  i,
RefTargetHandle  rtarg 
)
BOOL Active ( TimeValue  t ) [inline]
{ return delegate->Active(t); }
void Update ( TimeValue  t,
Interval valid 
)
int NumGizmos ( ) [inline]
{ return delegate->NumGizmos(); }
INode* GetGizmo ( int  i ) [inline]
{ return delegate->GetGizmo(i); }
void DeleteGizmo ( int  i ) [inline]
{ delegate->DeleteGizmo(i); }
void AppendGizmo ( INode node ) [inline]
{ delegate->AppendGizmo(node); }
BOOL OKGizmo ( INode node ) [inline]
{ return delegate->OKGizmo(node); } 
void EditGizmo ( INode node ) [inline]
{ delegate->EditGizmo(node); } 

Member Data Documentation

TYPE* delegate