#include "..\ScripterExport.h"#include "..\kernel\value.h"#include "..\compiler\codetree.h"#include "..\macros\define_implementations.h"#include "..\protocols\streams.inl"Go to the source code of this file.
Defines |
|
| #define | is_charstream(v) ((v)->_is_charstream()) |
| #define | is_filestream(v) ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(FileStream)) |
Functions |
|
| visible_class_debug_ok (CharStream) class CharStream | |
| visible_class_debug_ok (FileStream) class FileStream | |
| visible_class_debug_ok (WindowStream) class WindowStream | |
| #define is_charstream | ( | v | ) | ((v)->_is_charstream()) |
| #define is_filestream | ( | v | ) | ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(FileStream)) |
| visible_class_debug_ok | ( | CharStream | ) |
Definition at line 19 of file streams.h.
: public Value
{
protected:
unsigned int mlineNumber;
// bool mTrippedLineFeed;
Value* file_name; // source file
HashTable* resourceMap; // resource hashtable associated with source file
StringStream* resourceValueStream; // resource stream used to process the resource value string by the parser
public:
ScripterExport CharStream();
ScripterExport virtual ~CharStream();
classof_methods (CharStream, Value);
BOOL _is_charstream() { DbgAssert(!is_sourcepositionwrapper(this)); return 1; }
# define is_charstream(v) ((v)->_is_charstream())
virtual void gc_trace();
virtual MCHAR get_char() = 0;
virtual void unget_char(MCHAR c) = 0;
virtual MCHAR peek_char() = 0;
virtual int at_eos() = 0;
virtual void rewind() = 0;
virtual unsigned int pos();
virtual unsigned int line(); // Get the current line
// bool getTrippedLineFeed(bool reset = true); // get whether passed a line feed since last setTrippedLineFeed(false)/reset
// void setTrippedLineFeed(bool val); // set whether passed a line feed
virtual void seek(int pos);
virtual void flush_to_eol() = 0;
virtual void flush_to_eobuf();
virtual void flush_whitespace();
virtual MCHAR putch(MCHAR c) { return c; }
virtual const MCHAR* puts(const MCHAR* str) { return str; }
#pragma warning(push)
#pragma warning(disable:4100)
virtual int printf(const MCHAR* format, ...) { return 0; }
#pragma warning(pop)
virtual void close();
virtual void flush();
virtual void log_to(CharStream* log);
virtual void close_log();
virtual Listener* get_listener() { return NULL; }
virtual CharStream* get_log() { return NULL; }
virtual Value* get_file_name();
virtual void set_file_name(const TCHAR* fileName); // just sets the file_name member variable
virtual CharStream* get_resource_value_stream(Value* resourceID);
};
| visible_class_debug_ok | ( | FileStream | ) |
Define an equal operator (i.e. '==') for maxscript visible values.
Define a NOT equal operator (i.e. '!=') for maxscript visible values.
Definition at line 82 of file streams.h.
: public CharStream
{
public:
MCHAR* mode;
FILE* file;
CharStream* log;
Parser* reader;
DWORD decrypt;
int ungetchar_count;
MCHAR ungetchar_buf[8];
// Constructor / Destructor
ScripterExport FileStream();
ScripterExport ~FileStream();
classof_methods (FileStream, CharStream);
# define is_filestream(v) ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(FileStream))
void collect() { delete this; }
void gc_trace();
ScripterExport void sprin1(CharStream* s);
#include "..\macros\define_implementations.h"
# include "..\protocols\streams.inl"
/* internal char stream protocol */
ScripterExport MCHAR get_char();
ScripterExport void unget_char(MCHAR c);
ScripterExport MCHAR peek_char();
ScripterExport int at_eos();
ScripterExport unsigned int pos();
ScripterExport unsigned int line(); // Gets the current line number
ScripterExport void seek(int pos);
ScripterExport void rewind();
ScripterExport void flush_to_eol();
ScripterExport MCHAR putch(MCHAR c);
ScripterExport const MCHAR* puts(const MCHAR* str);
ScripterExport int printf(const MCHAR *format, ...);
ScripterExport FileStream* open_decrypt(const MCHAR* ifile_name, int seed);
ScripterExport FileStream* open(const MCHAR* ifile_name, const MCHAR* imode);
ScripterExport void flush();
ScripterExport void close();
void log_to(CharStream* log);
void close_log();
void undo_lookahead();
void check_readable();
void check_writeable();
};
| visible_class_debug_ok | ( | WindowStream | ) |
Define an equal operator (i.e. '==') for maxscript visible values.
Define a NOT equal operator (i.e. '!=') for maxscript visible values.
Definition at line 135 of file streams.h.
: public CharStream
{
public:
HWND window;
int cursor;
MCHAR* title;
Listener* listener;
CharStream* log;
MCHAR wputs_buf[512]; // edit control output buffer
MCHAR* wputs_p;
HWND echo;
// Constructor / Destructor
WindowStream(HWND iwin);
WindowStream(MCHAR* title); /* for background scripts; window with given title will open if output generated */
~WindowStream();
classof_methods (WindowStream, CharStream);
void collect() { delete this; }
void gc_trace();
ScripterExport void sprin1(CharStream* s);
#include "..\macros\define_implementations.h"
def_generic(sprint, "sprint");
use_generic( coerce, "coerce");
use_generic( flush, "flush");
/* internal MCHAR stream protocol */
MCHAR get_char() { return 0; }
void unget_char(MCHAR c) { UNUSED_PARAM(c); }
MCHAR peek_char() {return 0; }
int at_eos() { return TRUE; }
void rewind() {}
void flush_to_eol() {}
ScripterExport MCHAR putch(MCHAR c);
ScripterExport const MCHAR* puts(const MCHAR* str);
ScripterExport int printf(const MCHAR *format, ...);
ScripterExport void flush();
void ensure_window_open();
void log_to(CharStream* log);
void close_log();
Listener* get_listener() { return listener; }
CharStream* get_log() { return log; }
// edit control output primitives
ScripterExport MCHAR* wputs(const MCHAR *str);
ScripterExport void wflush();
ScripterExport MCHAR wputch(const MCHAR c);
ScripterExport int wprintf(const MCHAR *format, ...);
void set_echo_window(HWND wnd) { echo = wnd; }
void echo_cur_line();
int get_cur_line(MSTR& line);
};