MSPluginObject< TYPE > Class Template Reference
 
 
 
MSPluginObject< TYPE > Class Template Reference

#include <mxsPlugin.h>

Inheritance diagram for MSPluginObject< TYPE >:
MSPlugin Value Collectable

template<class TYPE>
class MSPluginObject< TYPE >

Public Member Functions

void  DeleteThis ()
  MSPluginObject ()
HWND  AddRollupPage (HINSTANCE hInst, const MCHAR *dlgTemplate, DLGPROC dlgProc, const MCHAR *title, LPARAM param=0, DWORD flags=0, int category=ROLLUP_CAT_STANDARD)
void  DeleteRollupPage (HWND hRollup)
IRollupWindow GetRollupWindow ()
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)
RefResult  NotifyRefChanged (Interval changeInt, RefTargetHandle hTarget, PartID &partID, RefMessage message)
int  NumRefs ()
RefTargetHandle  GetReference (int i)
void  SetReference (int i, RefTargetHandle rtarg)
void  RefDeleted ()
IOResult  Save (ISave *isave)
IOResult  Load (ILoad *iload)
void  RefAdded (RefMakerHandle rm)
void  NotifyTarget (int msg, RefMakerHandle rm)
const MCHAR *  GetObjectName ()
void  BeginEditParams (IObjParam *ip, ULONG flags, Animatable *prev)
void  EndEditParams (IObjParam *ip, ULONG flags, Animatable *next)
int  HitTest (TimeValue t, INode *inode, int type, int crossing, int flags, IPoint2 *p, ViewExp *vpt)
int  Display (TimeValue t, INode *inode, ViewExp *vpt, int flags)
void  GetWorldBoundBox (TimeValue t, INode *inode, ViewExp *vpt, Box3 &box)
void  GetLocalBoundBox (TimeValue t, INode *inode, ViewExp *vpt, Box3 &box)
void  Snap (TimeValue t, INode *inode, SnapInfo *snap, IPoint2 *p, ViewExp *vpt)
CreateMouseCallBack GetCreateMouseCallBack ()
BOOL  HasUVW ()
void  SetGenUVW (BOOL sw)
ObjectState  Eval (TimeValue time)
void  InitNodeName (MSTR &s)
Interval  ObjectValidity (TimeValue t)
int  CanConvertToType (Class_ID obtype)
Object ConvertToType (TimeValue t, Class_ID obtype)
void  GetCollapseTypes (Tab< Class_ID > &clist, Tab< MSTR * > &nlist)
void  GetDeformBBox (TimeValue t, Box3 &box, Matrix3 *tm, BOOL useSel)
int  IntersectRay (TimeValue t, Ray &r, float &at, Point3 &norm)

Public Attributes

IObjParam ip

Constructor & Destructor Documentation

MSPluginObject ( ) [inline]
: TYPE(){}

Member Function Documentation

HWND AddRollupPage ( HINSTANCE  hInst,
const MCHAR *  dlgTemplate,
DLGPROC  dlgProc,
const MCHAR *  title,
LPARAM  param = 0,
DWORD  flags = 0,
int  category = ROLLUP_CAT_STANDARD 
) [virtual]
void DeleteRollupPage ( HWND  hRollup ) [virtual]
IRollupWindow* GetRollupWindow ( ) [virtual]
virtual BaseInterface* GetInterface ( Interface_ID  id ) [inline, virtual]

Reimplemented from Value.

Reimplemented in MSObjectXtnd< GenCamera, MSPluginCamera >, MSObjectXtnd< HelperObject, MSPluginHelper >, MSObjectXtnd< GeomObject, MSPluginGeomObject >, MSObjectXtnd< ShapeObject, MSPluginShape >, and MSObjectXtnd< GenLight, MSPluginLight >.

                                                        { 
        // 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 MSPluginObject 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 TYPE::GetInterface(id);  
    }
RefResult NotifyRefChanged ( Interval  changeInt,
RefTargetHandle  hTarget,
PartID partID,
RefMessage  message 
) [inline]

Reimplemented from MSPlugin.

                                        { 
                                                return ((MSPlugin*)this)->NotifyRefChanged(changeInt, hTarget, partID, message); 
                                        }
void RefDeleted ( ) [inline]
IOResult Save ( ISave isave ) [inline, virtual]

Reimplemented from MSPlugin.

Reimplemented in MSPluginShape, and MSShapeXtnd.

{ return MSPlugin::Save(isave); }
IOResult Load ( ILoad iload ) [inline]

Reimplemented from MSPlugin.

Reimplemented in MSPluginShape, and MSShapeXtnd.

{ return MSPlugin::Load(iload); }
void RefAdded ( RefMakerHandle  rm ) [inline]
void NotifyTarget ( int  msg,
RefMakerHandle  rm 
) [inline]

Reimplemented from MSPlugin.

{ MSPlugin::NotifyTarget(msg, rm); }

Member Data Documentation