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

#include <arrays.h>

+ Inheritance diagram for Array:

Public Member Functions

ScripterExport Array (int init_size)
 
 ~Array ()
 
 classof_methods (Array, Value)
 
ScripterExport Value *& operator[] (const int i) const
 
BOOL _is_collection () override
 
BOOL _is_selection () override
 
void gc_trace () override
 
void collect () override
 
void sprin1 (CharStream *s) override
 
 use_generic (plus, "+")
 
 use_generic (copy, "copy")
 
 use_generic (coerce, "coerce")
 
 use_generic (free, "free")
 
Valuemap (node_map &m) override
 
Valuemap_path (PathName *path, node_map &m) override
 
Valuefind_first (BOOL(*test_fn)(INode *node, int level, const void *arg), const void *test_arg) override
 
Valueget_path (PathName *path) override
 
 def_property (count)
 
ScripterExport Valueappend (Value *)
 
ScripterExport Valuejoin (Value *)
 
ScripterExport Valuesort ()
 
ScripterExport Valuepush (Value *)
 
ScripterExport Valuedrop ()
 
ScripterExport Valueget (int index)
 
ScripterExport BOOL deep_eq (Value *other)
 
Valuedeep_copy (HashTable *remapper) override
 
SelectionIteratorselection_iterator () override
 
IOResult Save (ISave *isave) override
 
void to_fpvalue (FPValue &v) override
 
- Public Member Functions inherited from Value
virtual ScripterExport BOOL is_kind_of (ValueMetaClass *c)
 
virtual ScripterExport ValueMetaClasslocal_base_class ()
 
virtual Valueeval ()
 
virtual Valueeval_no_wrapper ()
 
virtual ScripterExport Valueapply (Value **arglist, int count, CallContext *cc=nullptr)
 
virtual ScripterExport Valueapply_no_alloc_frame (Value **arglist, int count, CallContext *cc=nullptr)
 
virtual void export_to_scripter ()
 
virtual Valuemap (node_map &m)
 
virtual Valuemap_path (PathName *path, node_map &m)
 
virtual Valuefind_first (BOOL(*test_fn)(INode *node, int level, const void *arg), const void *test_arg)
 
virtual Valueget_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 Valuedelete_vf (Value **arglist, int arg_count)
 
virtual ValueclearSelection_vf (Value **arglist, int arg_count)
 
virtual float to_float ()
 
virtual double to_double ()
 
virtual const MCHARto_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 BitArrayto_bitarray ()
 
virtual Point4 to_point4 ()
 
virtual Point3 to_point3 ()
 
virtual Point2 to_point2 ()
 
virtual AColor to_acolor ()
 
virtual COLORREF to_colorref ()
 
virtual INodeto_node ()
 
virtual Ray to_ray ()
 
virtual Interval to_interval ()
 
virtual Quat to_quat ()
 
virtual AngAxis to_angaxis ()
 
virtual Matrix3to_matrix3 ()
 
virtual Box3 to_box3 ()
 
virtual float * to_eulerangles ()
 
virtual Mtlto_mtl ()
 
virtual Texmapto_texmap ()
 
virtual MtlBaseto_mtlbase ()
 
virtual Modifierto_modifier ()
 
virtual TimeValue to_timevalue ()
 
virtual Controlto_controller ()
 
virtual Atmosphericto_atmospheric ()
 
virtual Effectto_effect ()
 
virtual IMultiPassCameraEffectto_mpassCamEffect ()
 
virtual ShadowTypeto_shadowtype ()
 
virtual FilterKernelto_filter ()
 
virtual INodeto_rootnode ()
 
virtual ITrackViewNodeto_trackviewnode ()
 
virtual NURBSIndependentPointto_nurbsindependentpoint ()
 
virtual NURBSPointto_nurbspoint ()
 
virtual NURBSObjectto_nurbsobject ()
 
virtual NURBSControlVertexto_nurbscontrolvertex ()
 
virtual NURBSCurveto_nurbscurve ()
 
virtual NURBSCVCurveto_nurbscvcurve ()
 
virtual NURBSSurfaceto_nurbssurface ()
 
virtual NURBSTexturePointto_nurbstexturepoint ()
 
virtual NURBSSetto_nurbsset ()
 
virtual ReferenceTargetto_reftarg ()
 
virtual Meshto_mesh ()
 
virtual BezierShapeto_beziershape ()
 
virtual Thunkto_thunk ()
 
virtual void to_fpvalue (FPValue &v)
 
virtual Rendererto_renderer ()
 
virtual Box2to_box2 ()
 
virtual NURBSTextureSurfaceto_nurbstexturesurface ()
 
virtual NURBSDisplayto_nurbsdisplay ()
 
virtual TessApproxto_tessapprox ()
 
virtual Valuewiden_to (Value *arg, Value **arg_list)
 
virtual BOOL comparable (Value *arg)
 
virtual BOOL special_case_compare (Value *arg, bool &specialCaseCompareResult)
 
virtual ScripterExport Valuedeep_copy (HashTable *remapper)
 
virtual BOOL is_const ()
 
virtual ScripterExport Valueget_property (Value **arg_list, int count)
 
virtual ScripterExport Valueset_property (Value **arg_list, int count)
 
ScripterExport Value_get_property (Value *prop)
 
virtual ScripterExport Value_set_property (Value *prop, Value *val)
 
virtual Valueget_container_property (Value *prop, Value *cur_prop)
 
virtual Valueset_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 SelectionIteratorselection_iterator ()
 
virtual ScripterExport IOResult Save (ISave *isave)
 
virtual void drop_MAX_refs ()
 
virtual BaseInterfaceGetInterface (Interface_ID id)
 
ScripterExport Valuemake_heap_permanent ()
 
ScripterExport Valuemake_heap_static ()
 
ScripterExport Valueget_heap_ptr ()
 
ScripterExport Valueget_stack_heap_ptr ()
 
ScripterExport Valuemigrate_to_heap ()
 
ScripterExport Valueget_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 Valueget_case_sensitive_property (Value **arg_list, int count, const TCHAR *case_sensitive_name)
 
virtual ScripterExport Valueset_case_sensitive_property (Value **arg_list, int count, const TCHAR *case_sensitive_name)
 
ScripterExport Valueinvoke_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 Valueinvoke_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 voidoperator new (size_t sz, char flag)
 
ScripterExport voidoperator new (size_t sz)
 
ScripterExport void operator delete (void *val)
 
ScripterExport void operator delete (void *val, char flag)
 
virtual void collect ()=0
 
virtual ScripterExport void gc_trace ()
 
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 Member Functions inherited from Collection
virtual Valuemap_path (PathName *path, value_vf vfn_ptr, value_cf cfn_ptr, Value **arg_list, int count)
 
virtual Valuefind_first (BOOL(*test_fn)(INode *node, int level, const void *arg), const void *test_arg)
 
virtual Valueget_path (PathName *path_name)
 

Static Public Member Functions

static Valuemake (Value **arg_list, int count)
 
static Valuemake_eval_args (Value **arg_list, int count)
 
static void setup ()
 
static ValueLoad (ILoad *iload, USHORT chunkID, ValueLoader *vload)
 
- 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 ()
 

Public Attributes

int volatile size
 
int data_size
 
Value **volatile data
 
- Public Attributes inherited from Value
ValueMetaClasstag
 
- Public Attributes inherited from Collectable
Collectablenext
 
Collectableprev
 
byte flags
 
byte flags2
 
short flags3
 

Static Public Attributes

static ScripterExport CRITICAL_SECTION array_update
 
- Static Public Attributes inherited from Collectable
static CRITICAL_SECTION heap_update
 
static Collectablecollectable_list
 
static Collectablepermanent_list
 
static free_memfree_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
 

Additional Inherited Members

- Static Protected Attributes inherited from Value
static ScripterExport Valuekeyarg_marker_value
 

Constructor & Destructor Documentation

◆ Array()

ScripterExport Array ( int  init_size)

◆ ~Array()

~Array ( )

Member Function Documentation

◆ classof_methods()

classof_methods ( Array  ,
Value   
)

◆ make()

static Value * make ( Value **  arg_list,
int  count 
)
static

◆ make_eval_args()

static Value * make_eval_args ( Value **  arg_list,
int  count 
)
static

◆ setup()

static void setup ( )
static

◆ operator[]()

ScripterExport Value *& operator[] ( const int  i) const

◆ _is_collection()

BOOL _is_collection ( )
inlineoverridevirtual

Reimplemented from Value.

40{ DbgAssert(!is_sourcepositionwrapper(this)); return 1; }
#define DbgAssert(expr)
Definition: assert1.h:83
#define is_sourcepositionwrapper(v)
Definition: value.h:591

◆ _is_selection()

BOOL _is_selection ( )
inlineoverridevirtual

Reimplemented from Value.

41{ DbgAssert(!is_sourcepositionwrapper(this)); return 1; }

◆ gc_trace()

void gc_trace ( )
overridevirtual

Reimplemented from Collectable.

◆ collect()

void collect ( )
overridevirtual

Implements Collectable.

◆ sprin1()

void sprin1 ( CharStream s)
overridevirtual

Reimplemented from Value.

◆ use_generic() [1/4]

use_generic ( plus  ,
"+"   
)

◆ use_generic() [2/4]

use_generic ( copy  ,
"copy"   
)

◆ use_generic() [3/4]

use_generic ( coerce  ,
"coerce"   
)

◆ use_generic() [4/4]

use_generic ( free  ,
"free"   
)

◆ map()

Value * map ( node_map m)
overridevirtual

Reimplemented from Value.

◆ map_path()

Value * map_path ( PathName path,
node_map m 
)
overridevirtual

Reimplemented from Value.

◆ find_first()

Value * find_first ( BOOL(*)(INode *node, int level, const void *arg)  test_fn,
const void test_arg 
)
overridevirtual

Reimplemented from Collection.

◆ get_path()

Value * get_path ( PathName path)
overridevirtual

Reimplemented from Collection.

◆ def_property()

def_property ( count  )

◆ append()

ScripterExport Value * append ( Value )

◆ join()

ScripterExport Value * join ( Value )

◆ sort()

ScripterExport Value * sort ( )

◆ push()

ScripterExport Value * push ( Value )

◆ drop()

ScripterExport Value * drop ( )

◆ get()

ScripterExport Value * get ( int  index)

◆ deep_eq()

ScripterExport BOOL deep_eq ( Value other)

◆ deep_copy()

Value * deep_copy ( HashTable remapper)
overridevirtual

Reimplemented from Value.

◆ selection_iterator()

SelectionIterator * selection_iterator ( )
overridevirtual

Reimplemented from Value.

◆ Save()

IOResult Save ( ISave isave)
overridevirtual

Reimplemented from Value.

◆ Load()

static Value * Load ( ILoad iload,
USHORT  chunkID,
ValueLoader vload 
)
static

◆ to_fpvalue()

void to_fpvalue ( FPValue v)
overridevirtual

Reimplemented from Value.

Member Data Documentation

◆ size

int volatile size

◆ data_size

int data_size

◆ data

Value** volatile data

◆ array_update

ScripterExport CRITICAL_SECTION array_update
static