3ds Max C++ API Reference
Loading...
Searching...
No Matches
MSSpecialFXXtnd< TYPE, MS_SUPER > Class Template Reference

#include <mxsPlugin.h>

+ Inheritance diagram for MSSpecialFXXtnd< TYPE, MS_SUPER >:

Public Member Functions

void DeleteThis () override
 
ReferenceTargetget_delegate () override
 
void GetClassName (MSTR &s, bool localized) const override
 
Class_ID ClassID () override
 
void FreeCaches () override
 
int NumSubs () override
 
AnimatableSubAnim (int i) override
 
MSTR SubAnimName (int i, bool localized=true) override
 
int NumParamBlocks () override
 
IParamBlock2GetParamBlock (int i) override
 
IParamBlock2GetParamBlockByID (BlockID id) override
 
voidGetInterface (ULONG id) override
 
BaseInterfaceGetInterface (Interface_ID id) override
 
int NumRefs () override
 
RefTargetHandle GetReference (int i) override
 
void SetReference (int i, RefTargetHandle rtarg) override
 
BOOL Active (TimeValue t) override
 
void Update (TimeValue t, Interval &valid) override
 
int NumGizmos () override
 
INodeGetGizmo (int i) override
 
void DeleteGizmo (int i) override
 
void AppendGizmo (INode *node) override
 
BOOL OKGizmo (INode *node) override
 
void EditGizmo (INode *node) override
 

Public Attributes

TYPE * delegate
 

Member Function Documentation

◆ DeleteThis()

void DeleteThis ( )
override

◆ get_delegate()

ReferenceTarget * get_delegate ( )
inlineoverride
2952{ return delegate; }
TYPE * delegate
Definition: mxsPlugin.h:2947

◆ GetClassName()

void GetClassName ( MSTR s,
bool  localized 
) const
inlineoverride
2955{ s = (localized) ? MS_SUPER::pc->ClassName() : MS_SUPER::pc->NonLocalizedClassName(); }

◆ ClassID()

Class_ID ClassID ( )
inlineoverride
2956{ return MS_SUPER::pc->class_id; }

◆ FreeCaches()

void FreeCaches ( )
inlineoverride
2957{ delegate->FreeCaches(); }

◆ NumSubs()

int NumSubs ( )
inlineoverride
2958{ return MS_SUPER::pblocks.Count() + 1; }

◆ SubAnim()

Animatable * SubAnim ( int  i)
inlineoverride
2959{ if (i == 0) { return delegate; } return MS_SUPER::pblocks[i-1]; }

◆ SubAnimName()

MSTR SubAnimName ( int  i,
bool  localized = true 
)
inlineoverride
2961 {
2962 if (i == 0)
2963 {
2964 MSTR n;
2965 delegate->GetClassName(n, localized);
2966 return n;
2967 }
2968 if (MS_SUPER::pblocks[i - 1]->GetDesc()->local_name != 0)
2969 {
2970 return localized ? MS_SUPER::pblocks[i - 1]->GetLocalName() : MS_SUPER::pblocks[i - 1]->GetDesc()->int_name.data();
2971 }
2972 return _T("");
2973 }
Definition: strclass.h:744
const wchar_t * data() const

◆ NumParamBlocks()

int NumParamBlocks ( )
inlineoverride
2974{ return MS_SUPER::pblocks.Count(); }

◆ GetParamBlock()

IParamBlock2 * GetParamBlock ( int  i)
inlineoverride
2975{ return MS_SUPER::pblocks[i]; }

◆ GetParamBlockByID()

IParamBlock2 * GetParamBlockByID ( BlockID  id)
inlineoverride
2976{ return MSPlugin::GetParamBlockByID(id); }
ScripterExport IParamBlock2 * GetParamBlockByID(BlockID id)

◆ GetInterface() [1/2]

void * GetInterface ( ULONG  id)
inlineoverride
2977{ if (id == I_MAXSCRIPTPLUGIN) return (MSPlugin*)this; return MS_SUPER::GetInterface(id); }
Definition: mxsPlugin.h:350
#define I_MAXSCRIPTPLUGIN
An Animatable supporting this interface is a MSPlugin.
Definition: AnimatableInterfaceIDs.h:64

◆ GetInterface() [2/2]

BaseInterface * GetInterface ( Interface_ID  id)
inlineoverride
2980 {
2982 // GetInterface(Interface_ID) was added after the MAX 4
2983 // SDK shipped. This did not break the SDK because
2984 // it only calls the base class implementation. If you add
2985 // any other code here, plugins compiled with the MAX 4 SDK
2986 // that derive from MSSpecialFXXtnd and call Base class
2987 // implementations of GetInterface(Interface_ID), will not call
2988 // that code in this routine. This means that the interface
2989 // you are adding will not be exposed for these objects,
2990 // and could have unexpected results.
2991 return MS_SUPER::GetInterface(id);
2993 }

◆ NumRefs()

int NumRefs ( )
override

◆ GetReference()

RefTargetHandle GetReference ( int  i)
override

◆ SetReference()

void SetReference ( int  i,
RefTargetHandle  rtarg 
)
override

◆ Active()

BOOL Active ( TimeValue  t)
inlineoverride
3004{ return delegate->Active(t); }

◆ Update()

void Update ( TimeValue  t,
Interval valid 
)
override

◆ NumGizmos()

int NumGizmos ( )
inlineoverride
3006{ return delegate->NumGizmos(); }

◆ GetGizmo()

INode * GetGizmo ( int  i)
inlineoverride
3007{ return delegate->GetGizmo(i); }

◆ DeleteGizmo()

void DeleteGizmo ( int  i)
inlineoverride
3008{ delegate->DeleteGizmo(i); }

◆ AppendGizmo()

void AppendGizmo ( INode node)
inlineoverride
3009{ delegate->AppendGizmo(node); }

◆ OKGizmo()

BOOL OKGizmo ( INode node)
inlineoverride
3010{ return delegate->OKGizmo(node); }

◆ EditGizmo()

void EditGizmo ( INode node)
inlineoverride
3011{ delegate->EditGizmo(node); }

Member Data Documentation

◆ delegate

TYPE* delegate