3ds Max C++ API Reference
Loading...
Searching...
No Matches
MSPlugin Class Referenceabstract

#include <C:/adskgit/3dsmax/3dsmax/3dswin/src/maxsdk/include/maxscript/mxsplugin/mxsPlugin.h>

Inheritance diagram for MSPlugin:

Public Member Functions

 MSPlugin ()
virtual ~MSPlugin ()
void init (MSPluginClass *pClass)
ScripterExport void gc_trace () override
ScripterExport void collect () override
void DeleteThis ()
void init_locals ()
void call_handler (Value *handler, Value **arg_list, int count, TimeValue t, BOOL disable_on_error=FALSE)
Value * _call_handler (Value *handler, Value **arg_list, int count, TimeValue t, BOOL disable_on_error=FALSE)
FPStatus call_handler (const MCHAR *handler_name, FPParams *params, FPValue &result, TimeValue t, BOOL disable_on_error=FALSE)
FPStatus call_handler (Value *handler, FPParams *params, FPValue &result, TimeValue t, BOOL disable_on_error=FALSE)
void post_create (ReferenceTarget *me, BOOL loading)
void call_all_set_handlers ()
void disable ()
void enable ()
BOOL enabled ()
int get_local_index (Value *prop)
Value * get_local (int index)
void set_local (int index, Value *val)
ScripterExport IParamBlock2 * GetParamBlockByID (BlockID id)
virtual HWND AddRollupPage (HINSTANCE hInst, const MCHAR *dlgTemplate, DLGPROC dlgProc, const MCHAR *title, LPARAM param=0, DWORD vflags=0, int category=ROLLUP_CAT_STANDARD)=0
virtual void DeleteRollupPage (HWND hRollup)=0
virtual IRollupWindow * GetRollupWindow ()=0
virtual void RollupMouseMessage (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)=0
ScripterExport RefResult NotifyRefChanged (const Interval &changeInt, RefTargetHandle hTarget, PartID &partID, RefMessage message, BOOL propagate)
ScripterExport RefTargetHandle clone_from (MSPlugin *obj, ReferenceTarget *obj_as_ref, RemapDir &remap)
void RefAdded (RefMakerHandle rm)
ScripterExport void RefDeleted (RefMakerHandle rm)
void NotifyTarget (int msg, RefMakerHandle rm)
virtual ReferenceTarget * get_delegate ()=0
IOResult Save (ISave *isave) override
IOResult Load (ILoad *iLoad)
void post_load (ILoad *iLoad, int which)
void dump_local_vars_and_externals (int indentLevel)
Public Member Functions inherited from Value
virtual ScripterExport BOOL is_kind_of (ValueMetaClass *c)
virtual ScripterExport ValueMetaClass * local_base_class ()
virtual Value * eval ()
virtual Value * eval_no_wrapper ()
virtual ScripterExport Value * apply (Value **arglist, int count, CallContext *cc=nullptr)
virtual ScripterExport Value * apply_no_alloc_frame (Value **arglist, int count, CallContext *cc=nullptr)
virtual void export_to_scripter ()
virtual Value * map (node_map &m)
virtual Value * map_path (PathName *path, node_map &m)
virtual Value * find_first (BOOL(*test_fn)(INode *node, int level, const void *arg), const void *test_arg)
virtual Value * get_path (PathName *path)
virtual ScripterExport void sprin1 (CharStream *stream)
virtual ScripterExport void sprint (CharStream *stream)
virtual void prin1 ()
virtual void print ()
virtual Class_ID get_max_class_id ()
virtual Value * delete_vf (Value **arglist, int arg_count)
virtual Value * clearSelection_vf (Value **arglist, int arg_count)
virtual float to_float ()
virtual double to_double ()
virtual const MCHAR * to_string ()
virtual MSTR to_mstr ()
virtual MSTR to_filename ()
virtual int to_int ()
virtual INT64 to_int64 ()
virtual INT_PTR to_intptr ()
virtual BOOL to_bool ()
virtual BitArray & to_bitarray ()
virtual Point4 to_point4 ()
virtual Point3 to_point3 ()
virtual Point2 to_point2 ()
virtual AColor to_acolor ()
virtual COLORREF to_colorref ()
virtual INode * to_node ()
virtual Ray to_ray ()
virtual Interval to_interval ()
virtual Quat to_quat ()
virtual AngAxis to_angaxis ()
virtual Matrix3 & to_matrix3 ()
virtual Box3 to_box3 ()
virtual float * to_eulerangles ()
virtual Mtl * to_mtl ()
virtual Texmap * to_texmap ()
virtual MtlBase * to_mtlbase ()
virtual Modifier * to_modifier ()
virtual TimeValue to_timevalue ()
virtual Control * to_controller ()
virtual Atmospheric * to_atmospheric ()
virtual Effect * to_effect ()
virtual IMultiPassCameraEffect * to_mpassCamEffect ()
virtual ShadowType * to_shadowtype ()
virtual FilterKernel * to_filter ()
virtual INode * to_rootnode ()
virtual ITrackViewNode * to_trackviewnode ()
virtual NURBSIndependentPoint * to_nurbsindependentpoint ()
virtual NURBSPoint * to_nurbspoint ()
virtual NURBSObject * to_nurbsobject ()
virtual NURBSControlVertex * to_nurbscontrolvertex ()
virtual NURBSCurve * to_nurbscurve ()
virtual NURBSCVCurve * to_nurbscvcurve ()
virtual NURBSSurface * to_nurbssurface ()
virtual NURBSTexturePoint * to_nurbstexturepoint ()
virtual NURBSSet * to_nurbsset ()
virtual ReferenceTarget * to_reftarg ()
virtual Mesh * to_mesh ()
virtual BezierShape * to_beziershape ()
virtual Thunk * to_thunk ()
virtual void to_fpvalue (FPValue &v)
virtual Renderer * to_renderer ()
virtual Box2 & to_box2 ()
virtual NURBSTextureSurface * to_nurbstexturesurface ()
virtual NURBSDisplay * to_nurbsdisplay ()
virtual TessApprox * to_tessapprox ()
virtual Value * widen_to (Value *arg, Value **arg_list)
virtual BOOL comparable (Value *arg)
virtual BOOL special_case_compare (Value *arg, bool &specialCaseCompareResult)
virtual ScripterExport bool ValuesEqual (Value *other, bool strictCompare)
virtual ScripterExport Value * deep_copy (HashTable *remapper)
virtual BOOL is_const ()
virtual ScripterExport Value * get_property (Value **arg_list, int count)
virtual ScripterExport Value * set_property (Value **arg_list, int count)
ScripterExport Value * _get_property (Value *prop)
virtual ScripterExport Value * _set_property (Value *prop, Value *val)
virtual Value * get_container_property (Value *prop, Value *cur_prop)
virtual Value * set_container_property (Value *prop, Value *val, Value *cur_prop)
virtual BOOL _is_collection ()
virtual BOOL _is_charstream ()
virtual BOOL _is_rolloutcontrol ()
virtual BOOL _is_rolloutthunk ()
virtual BOOL _is_function ()
virtual BOOL _is_selection ()
virtual BOOL _is_thunk ()
virtual BOOL _is_indirect_thunk ()
virtual SelectionIterator * selection_iterator ()
virtual void drop_MAX_refs ()
virtual BaseInterface * GetInterface (Interface_ID id)
ScripterExport Value * make_heap_permanent ()
ScripterExport Value * make_heap_static ()
ScripterExport Value * get_heap_ptr ()
ScripterExport Value * get_stack_heap_ptr ()
ScripterExport Value * migrate_to_heap ()
ScripterExport Value * get_live_ptr ()
virtual BOOL object_supports_case_sensitive_names ()
ScripterExport Value * _get_property (Value *prop, Value *prop_name_as_parsed)
ScripterExport Value * _set_property (Value *prop, Value *val, Value *prop_name_as_parsed)
virtual ScripterExport Value * get_case_sensitive_property (Value **arg_list, int count, const TCHAR *case_sensitive_name)
virtual ScripterExport Value * set_case_sensitive_property (Value **arg_list, int count, const TCHAR *case_sensitive_name)
ScripterExport Value * invoke_getter_case_sensitive_property (Value *target, getter_vf getter, Value **arg_list, int count, const TCHAR *case_sensitive_name, const TCHAR *nested_prop_case_sensitive_name)
ScripterExport Value * invoke_setter_case_sensitive_property (Value *target, setter_vf setter, Value **arg_list, int count, const TCHAR *case_sensitive_name, const TCHAR *nested_prop_case_sensitive_name)
Public Member Functions inherited from Collectable
ScripterExport Collectable ()
virtual ScripterExport ~Collectable ()
ScripterExport void * operator new (size_t sz, char flag)
ScripterExport void * operator new (size_t sz)
ScripterExport void operator delete (void *val)
ScripterExport void operator delete (void *val, char flag)
ScripterExport bool derives_from_Animatable ()
virtual BOOL derives_from_MAXWrapper ()
ScripterExport void make_collectable ()
void make_permanent ()
void make_static ()
int is_marked ()
int is_not_marked ()
int is_garbage ()
int is_permanent ()
void mark_in_use ()
void unmark_in_use ()
int has_heap_copy ()
int is_in_heap ()
int is_on_stack ()

Public Attributes

MSPluginClass * pc
Value ** locals
short flags
int version
ReferenceTarget * ref
Tab< IParamBlock2 * > pblocks
ILoad * iload
Public Attributes inherited from Value
ValueMetaClass * tag
Public Attributes inherited from Collectable
Collectable * next
Collectable * prev
byte flags
byte flags2
short flags3

Additional Inherited Members

Static Public Member Functions inherited from Collectable
static ScripterExport void for_all_values (void(*map_fn)(Value *val), ValueMapper *mapper=nullptr, ValueMetaClass *c=nullptr)
static void mark ()
static void sweep ()
static void setup (size_t)
static ScripterExport void gc ()
static void coalesce_free_list ()
static void close_down ()
static void drop_maxwrapper_refs ()
static ScripterExport void push_alloc_stack_frame ()
static ScripterExport void pop_alloc_stack_frame ()
static ScripterExport ULONGLONG get_num_values_created ()
static ScripterExport bool validate_value_linkages ()
Static Public Attributes inherited from Collectable
static CRITICAL_SECTION heap_update
static Collectable * collectable_list
static Collectable * permanent_list
static free_mem * free_list [GC_NUM_SUBLISTS]
static size_t heap_allocated
static size_t heap_size
static ScripterExport collectable_state state
static ScripterExport bool fullCollectNextHoldFlush
static bool gc_light
static bool in_gc
static HANDLE hGCCompletedEvent
Static Protected Attributes inherited from Value
static ScripterExport Value * keyarg_marker_value

Constructor & Destructor Documentation

◆ MSPlugin()

MSPlugin ( )
inline
359{ flags = 0; }
short flags
Definition mxsPlugin.h:353

◆ ~MSPlugin()

virtual ~MSPlugin ( )
virtual

Member Function Documentation

◆ init()

void init ( MSPluginClass * pClass)

◆ gc_trace()

ScripterExport void gc_trace ( )
overridevirtual

Reimplemented from Collectable.

◆ collect()

ScripterExport void collect ( )
overridevirtual

Implements Collectable.

◆ DeleteThis()

void DeleteThis ( )

◆ init_locals()

void init_locals ( )

◆ call_handler() [1/3]

void call_handler ( Value * handler,
Value ** arg_list,
int count,
TimeValue t,
BOOL disable_on_error = FALSE )

◆ _call_handler()

Value * _call_handler ( Value * handler,
Value ** arg_list,
int count,
TimeValue t,
BOOL disable_on_error = FALSE )

◆ call_handler() [2/3]

FPStatus call_handler ( const MCHAR * handler_name,
FPParams * params,
FPValue & result,
TimeValue t,
BOOL disable_on_error = FALSE )

◆ call_handler() [3/3]

FPStatus call_handler ( Value * handler,
FPParams * params,
FPValue & result,
TimeValue t,
BOOL disable_on_error = FALSE )

◆ post_create()

void post_create ( ReferenceTarget * me,
BOOL loading )

◆ call_all_set_handlers()

void call_all_set_handlers ( )

◆ disable()

void disable ( )
inline
377{ flags |= MSP_DISABLED; }
#define MSP_DISABLED
Definition mxsPlugin.h:345

◆ enable()

void enable ( )
inline
378{ flags &= ~MSP_DISABLED; }

◆ enabled()

BOOL enabled ( )
inline
379{ return !(flags & MSP_DISABLED); }

◆ get_local_index()

int get_local_index ( Value * prop)

◆ get_local()

Value * get_local ( int index)
inline
383{ return locals[index]; }
Value ** locals
Definition mxsPlugin.h:352

◆ set_local()

void set_local ( int index,
Value * val )
inline
384{ locals[index] = heap_ptr(val); }
Value * heap_ptr(Value *v)
Definition value.h:425

◆ GetParamBlockByID()

ScripterExport IParamBlock2 * GetParamBlockByID ( BlockID id)

◆ AddRollupPage()

◆ DeleteRollupPage()

◆ GetRollupWindow()

◆ RollupMouseMessage()

◆ NotifyRefChanged()

ScripterExport RefResult NotifyRefChanged ( const Interval & changeInt,
RefTargetHandle hTarget,
PartID & partID,
RefMessage message,
BOOL propagate )

◆ clone_from()

ScripterExport RefTargetHandle clone_from ( MSPlugin * obj,
ReferenceTarget * obj_as_ref,
RemapDir & remap )

◆ RefAdded()

void RefAdded ( RefMakerHandle rm)

◆ RefDeleted()

◆ NotifyTarget()

void NotifyTarget ( int msg,
RefMakerHandle rm )

◆ get_delegate()

◆ Save()

◆ Load()

IOResult Load ( ILoad * iLoad)

◆ post_load()

void post_load ( ILoad * iLoad,
int which )

◆ dump_local_vars_and_externals()

void dump_local_vars_and_externals ( int indentLevel)

Member Data Documentation

◆ pc

◆ locals

Value** locals

◆ flags

short flags

◆ version

int version

◆ ref

◆ pblocks

Tab<IParamBlock2*> pblocks

◆ iload

ILoad* iload