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

#include <WindowStream.h>

+ Inheritance diagram for WindowStream:

Public Member Functions

 WindowStream (HWND iwin)
 
 WindowStream (const MCHAR *title)
 
 ~WindowStream ()
 
 classof_methods (WindowStream, CharStream)
 
void collect () override
 
void gc_trace () override
 
void sprin1 (CharStream *s) override
 
Value * get_property (Value **arg_list, int count) override
 
Value * set_property (Value **arg_list, int count) override
 
 def_generic (sprint, "sprint")
 
 use_generic (coerce, "coerce")
 
 use_generic (flush, "flush")
 
MaxSDK::Util::Char get_char () override
 
void unget_char (const MaxSDK::Util::Char &c) override
 
MaxSDK::Util::Char peek_char () override
 
int at_eos () override
 
void rewind () override
 
void flush_to_eol () override
 
MaxSDK::Util::Char putch (const MaxSDK::Util::Char &c) override
 
const MCHAR * puts (const MCHAR *str) override
 
int printf (const MCHAR *format,...) override
 
void flush () override
 
void ensure_window_open ()
 
void log_to (CharStream *pLog) override
 
void close_log () override
 
Listener * get_listener () override
 
CharStream * get_log () override
 
ScripterExport const MCHAR * wputs (const MCHAR *str)
 
ScripterExport void wflush ()
 
ScripterExport MaxSDK::Util::Char wputch (const MaxSDK::Util::Char &c)
 
ScripterExport int wprintf (const MCHAR *format,...)
 
void set_echo_window (HWND wnd)
 
void echo_cur_line ()
 
int get_cur_line (MSTR &line)
 
ScripterExport int vprintf (const MCHAR *format, va_list args)
 
void update_window (int lastWritePos)
 
- Public Member Functions inherited from CharStream
ScripterExport CharStream ()
 
virtual ~CharStream ()
 
 classof_methods (CharStream, Value)
 
BOOL _is_charstream () override
 
void gc_trace () override
 
virtual MaxSDK::Util::Char get_char ()=0
 
virtual void unget_char (const MaxSDK::Util::Char &c)=0
 
virtual MaxSDK::Util::Char peek_char ()=0
 
virtual int at_eos ()=0
 
virtual void rewind ()=0
 
virtual unsigned int pos ()
 
virtual unsigned int line ()
 
virtual void seek (int pos)
 
virtual void flush_to_eol ()=0
 
virtual void flush_to_eobuf ()
 
virtual void flush_whitespace ()
 
virtual MaxSDK::Util::Char putch (const MaxSDK::Util::Char &c)
 
virtual const MCHAR * puts (const MCHAR *str)
 
void puts (const MSTR &str)
 
virtual int printf (const MCHAR *format,...)
 
virtual void close ()
 
virtual void flush ()
 
virtual void log_to (CharStream *log)
 
virtual void close_log ()
 
virtual Listener * get_listener ()
 
virtual CharStream * get_log ()
 
virtual Value * get_file_name ()
 
virtual void set_file_name (const MCHAR *fileName)
 
virtual CharStream * get_resource_value_stream (Value *resourceID)
 
- 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 ScripterExport IOResult Save (ISave *isave)
 
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)
 
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 Attributes

HWND window
 
int cursor
 
MSTR title
 
Listener * listener
 
CharStream * log
 
MCHAR wputs_buf [512]
 
MCHAR * wputs_p
 
HWND echo
 
- 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
 
- Protected Attributes inherited from CharStream
unsigned int mlineNumber
 
Value * file_name
 
HashTable * resourceMap
 
StringStream * resourceValueStream
 
- Static Protected Attributes inherited from Value
static ScripterExport Value * keyarg_marker_value
 

Constructor & Destructor Documentation

◆ WindowStream() [1/2]

WindowStream ( HWND  iwin)

◆ WindowStream() [2/2]

WindowStream ( const MCHAR *  title)

◆ ~WindowStream()

Member Function Documentation

◆ classof_methods()

classof_methods ( WindowStream  ,
CharStream   
)

◆ collect()

void collect ( )
overridevirtual

Implements Collectable.

◆ gc_trace()

void gc_trace ( )
overridevirtual

Reimplemented from CharStream.

◆ sprin1()

void sprin1 ( CharStream *  s)
overridevirtual

Reimplemented from Value.

◆ get_property()

Value * get_property ( Value **  arg_list,
int  count 
)
overridevirtual

Reimplemented from Value.

◆ set_property()

Value * set_property ( Value **  arg_list,
int  count 
)
overridevirtual

Reimplemented from Value.

◆ def_generic()

def_generic ( sprint  ,
"sprint"   
)

◆ use_generic() [1/2]

use_generic ( coerce  ,
"coerce"   
)

◆ use_generic() [2/2]

use_generic ( flush  ,
"flush"   
)

◆ get_char()

MaxSDK::Util::Char get_char ( )
inlineoverridevirtual

Implements CharStream.

49{ return MaxSDK::Util::Char(); }
Represents a single Unicode character.
Definition: maxchar.h:36

◆ unget_char()

void unget_char ( const MaxSDK::Util::Char &  c)
inlineoverridevirtual

Implements CharStream.

50{ UNUSED_PARAM(c); }
#define UNUSED_PARAM(x)
Definition: BuildWarnings.h:13

◆ peek_char()

MaxSDK::Util::Char peek_char ( )
inlineoverridevirtual

Implements CharStream.

51{return MaxSDK::Util::Char(); }

◆ at_eos()

int at_eos ( )
inlineoverridevirtual

Implements CharStream.

52{ return TRUE; }

◆ rewind()

void rewind ( )
inlineoverridevirtual

Implements CharStream.

53{}

◆ flush_to_eol()

void flush_to_eol ( )
inlineoverridevirtual

Implements CharStream.

54{}

◆ putch()

MaxSDK::Util::Char putch ( const MaxSDK::Util::Char &  c)
overridevirtual

Reimplemented from CharStream.

◆ puts()

const MCHAR * puts ( const MCHAR *  str)
overridevirtual

Reimplemented from CharStream.

◆ printf()

int printf ( const MCHAR *  format,
  ... 
)
overridevirtual

Reimplemented from CharStream.

◆ flush()

void flush ( )
overridevirtual

Reimplemented from CharStream.

◆ ensure_window_open()

void ensure_window_open ( )

◆ log_to()

void log_to ( CharStream *  pLog)
overridevirtual

Reimplemented from CharStream.

◆ close_log()

void close_log ( )
overridevirtual

Reimplemented from CharStream.

◆ get_listener()

Listener * get_listener ( )
inlineoverridevirtual

Reimplemented from CharStream.

65{ return listener; }
Listener * listener
Definition: WindowStream.h:22

◆ get_log()

CharStream * get_log ( )
inlineoverridevirtual

Reimplemented from CharStream.

66{ return log; }
CharStream * log
Definition: WindowStream.h:23

◆ wputs()

ScripterExport const MCHAR * wputs ( const MCHAR *  str)

◆ wflush()

ScripterExport void wflush ( )

◆ wputch()

◆ wprintf()

ScripterExport int wprintf ( const MCHAR *  format,
  ... 
)

◆ set_echo_window()

void set_echo_window ( HWND  wnd)
inline
73{ echo = wnd; }
HWND echo
Definition: WindowStream.h:26

◆ echo_cur_line()

void echo_cur_line ( )

◆ get_cur_line()

int get_cur_line ( MSTR &  line)

◆ vprintf()

ScripterExport int vprintf ( const MCHAR *  format,
va_list  args 
)

◆ update_window()

void update_window ( int  lastWritePos)

Member Data Documentation

◆ window

HWND window

◆ cursor

int cursor

◆ title

MSTR title

◆ listener

Listener* listener

◆ log

CharStream* log

◆ wputs_buf

MCHAR wputs_buf[512]

◆ wputs_p

MCHAR* wputs_p

◆ echo

HWND echo