<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta name="robots" content="noindex"> <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>ScriptInterp class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Generated by Doxygen 1.2.5 on Tue Oct 9 20:52:05 2001 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> </center> <hr><h1>ScriptInterp Class Reference</h1>System script interpreter core engine class. Extensible Bayonne Scripting Engine. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="script_h-source.html">script.h</a>></code> <p> <p>Inheritance diagram for ScriptInterp: <p><center><img src="class_scriptinterp.gif" usemap="#ScriptInterp_map" border="0"></center> <map name="ScriptInterp_map"> <area href="class_scriptsymbol.html" alt="ScriptSymbol" shape="rect" coords="0,56,114,80"> <area href="class_sharedmempager.html" alt="SharedMemPager" shape="rect" coords="0,0,114,24"> </map> <a href="class_scriptinterp-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="script_h.html#a2">scriptsymbol_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a0">getLocal</a> (const char *name, size_t size=0)</td></tr> <tr><td> </td><td><font size=-1><em>Search for symbols either thru the virtual global space or thru local space if a local space has been allocated on the heap.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a1">Attach</a> (const char *scrname)</td></tr> <tr><td> </td><td><font size=-1><em>Attempt to attach script engine to active session and specify a starting script.</em> <a href="#a1">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a2">Detach</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Detach the current script image.</em> <a href="#a2">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a3">Redirect</a> (const char *scrname)</td></tr> <tr><td> </td><td><font size=-1><em>Script redirection support.</em> <a href="#a3">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a4">Step</a> (const char *trapname=NULL)</td></tr> <tr><td> </td><td><font size=-1><em>Execute the next pending script statement.</em> <a href="#a4">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a5">isActive</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Test if script interpreter is currently active.</em> <a href="#a5">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>char* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a6">getOption</a> (const char *def=NULL)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch next logical option but do not evaluate.</em> <a href="#a6">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>char* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a7">getKeyword</a> (const char *keyword)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch an embedded attribute keyword argument.</em> <a href="#a7">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a8">initKeywords</a> (int size)</td></tr> <tr><td> </td><td><font size=-1><em>Initialize symbols from the keyword list.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>char* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a9">getValue</a> (const char *def=NULL)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch and evaluate next logical option.</em> <a href="#a9">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>char* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a10">getContent</a> (char *sym)</td></tr> <tr><td> </td><td><font size=-1><em>Evaluate the content of an option retrieved with getOption.</em> <a href="#a10">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="script_h.html#a3">scriptline_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a11">getScript</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Return the current script line object so it may be debugged.</em> <a href="#a11">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>const char* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a12">getMember</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Return the member id of a script command.</em> <a href="#a12">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="script_h.html#a4">scriptname_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a13">getObject</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Return the master script object for resource context.</em> <a href="#a13">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="class_scriptimage.html">ScriptImage</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a14">getImage</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Return the script image holding this application's context.</em> <a href="#a14">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#a15">autoloop</a> (bool enable)</td></tr> <tr><td> </td><td><font size=-1><em>Enable or disable autolooping of statements.</em> <a href="#a15">More...</a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Protected Methods</h2></td></tr> <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b0">ScriptInterp</a> (<a class="el" href="class_scriptcommand.html">ScriptCommand</a> *cmd, size_t symsize, size_t pgsize=1024)</td></tr> <tr><td> </td><td><font size=-1><em>Derive a new instance of the system script interpreter.</em> <a href="#b0">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b1">getTrigger</a> (bool use)</td></tr> <tr><td> </td><td><font size=-1><em>Get a local and/or global trigger.</em> <a href="#b1">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b2">getOnce</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch unique "once" flag and set.</em> <a href="#b2">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b3">Notify</a> (unsigned long mask)</td></tr> <tr><td> </td><td><font size=-1><em>Notify signal mask for "on" handlers.</em> <a href="#b3">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b4">Notify</a> (const char *str)</td></tr> <tr><td> </td><td><font size=-1><em>Notify signal by symbolic name.</em> <a href="#b4">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>unsigned long </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b5">getMask</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch the current interpreter mask bits directly.</em> <a href="#b5">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="class_scriptcommand.html">ScriptCommand</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b6">getCommand</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch the active command interpreter subsystem.</em> <a href="#b6">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b7">Conditional</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Used to process "conditional" arguments such as for IF/DO/LOOP statements.</em> <a href="#b7">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b8">scrExit</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Some systems can derive alternative "exit" commands which can call this routine after performing other operations.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b9">scrGoto</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>This is often called to process branching requests.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b10">scrData</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Method used to encode "data" lines.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual unsigned </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b11">getId</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Used to return channel identifiers in some systems.</em> <a href="#b11">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b12">getGlobalTrap</a> (unsigned id)</td></tr> <tr><td> </td><td><font size=-1><em>Used to fetch a global trap execution context branch.</em> <a href="#b12">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="script_h.html#a2">scriptsymbol_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b13">getVariable</a> (size_t size=0)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch a variable (symbol) that will be used to store data.</em> <a href="#b13">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual <a class="el" href="script_h.html#a2">scriptsymbol_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b14">getIndirect</a> (char *sym)</td></tr> <tr><td> </td><td><font size=-1><em>May be used to override processing of indirect content requests.</em> <a href="#b14">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b15">Advance</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Advance program to the next script statement.</em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b16">Error</a> (const char *error)</td></tr> <tr><td> </td><td><font size=-1><em>Set error variable and advance to either the error handler or next script statement.</em> <a href="#b16">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b17">Trap</a> (unsigned id)</td></tr> <tr><td> </td><td><font size=-1><em>Set the execution interpreter to a trap identifier.</em> <a href="#b17">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b18">Trap</a> (const char *trapname)</td></tr> <tr><td> </td><td><font size=-1><em>Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap).</em> <a href="#b18">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b19">Push</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Attempt to push a value onto the stack.</em> <a href="#b19">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b20">Pull</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Attempt to recall a previous stack level.</em> <a href="#b20">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b21">Signal</a> (const char *trapname)</td></tr> <tr><td> </td><td><font size=-1><em>Signals are used during "delayed" execution steps when a signal event has occured aynchronously with the execution of a script controlled state event handler.</em> <a href="#b21">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b22">Signal</a> (unsigned trapid)</td></tr> <tr><td> </td><td><font size=-1><em>Signals can be referenced by numeric id as well as by symbolic name.</em> <a href="#b22">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual bool </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b23">Execute</a> (<a class="el" href="script_h.html#a0">scriptmethod_t</a> method)</td></tr> <tr><td> </td><td><font size=-1><em>Runtime execution of script handler.</em> <a href="#b23">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b24">Stop</a> (unsigned long mask)</td></tr> <tr><td> </td><td><font size=-1><em>Stop request handler.</em> <a href="#b24">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b25">Exit</a> (void)=0</td></tr> <tr><td> </td><td><font size=-1><em>Exit request handler.</em> <a href="#b25">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual <a class="el" href="script_h.html#a4">scriptname_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b26">getScriptImage</a> (const char *label)</td></tr> <tr><td> </td><td><font size=-1><em>Runtime branch point for label selection.</em> <a href="#b26">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="script_h.html#a4">scriptname_t</a>* </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b27">getScriptCopy</a> (const char *src)</td></tr> <tr><td> </td><td><font size=-1><em>Fetch duplicative script image as needed.</em> <a href="#b27">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b28">sleepScheduler</a> (timeout_t timeout)</td></tr> <tr><td> </td><td><font size=-1><em>Patch point for sleep delay notification.</em> <a href="#b28">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual void </td><td valign=bottom><a class="el" href="class_scriptinterp.html#b29">stepScheduler</a> (const char *trapname)</td></tr> <tr><td> </td><td><font size=-1><em>Step scheduler callback to force step execution.</em> <a href="#b29">More...</a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Friends</h2></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="#l0">ScriptImage</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="#l1">ScriptSession</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="#l2">ScriptModule</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="#l3">ScriptCommand</a></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> System script interpreter core engine class. Extensible Bayonne Scripting Engine. <p> This class is further derived to impliment application specific language dialects. <p> <dl compact><dt> <b>Author(s): </b><dd> David Sugar <<a href="mailto:dyfet@ostel.com">dyfet@ostel.com</a>> </dl> <p> <hr><h2>Constructor & Destructor Documentation</h2> <a name="b0" doxytag="ScriptInterp::ScriptInterp"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> ScriptInterp::ScriptInterp ( </b></td> <td valign="bottom"><b> <a class="el" href="class_scriptcommand.html">ScriptCommand</a> * <em>cmd</em>, </b></td> </tr> <tr> <td></td> <td><b> size_t <em>symsize</em>, </b></td> </tr> <tr> <td></td> <td><b> size_t <em>pgsize</em> = 1024 )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Derive a new instance of the system script interpreter. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>symsize</em> </td><td> for default symbol sizing. </td></tr> <tr><td valign=top><em>pgsize</em> </td><td> for memory fragmentation. </td></tr> </table> </dl> </td> </tr> </table> <hr><h2>Member Function Documentation</h2> <a name="b15" doxytag="ScriptInterp::Advance"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Advance ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Advance program to the next script statement. <p> </td> </tr> </table> <a name="a1" doxytag="ScriptInterp::Attach"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Attach ( </b></td> <td valign="bottom"><b> const char * <em>scrname</em> ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Attempt to attach script engine to active session and specify a starting script. <p> <dl compact><dt> <b>Returns: </b><dd> false if failed to attach. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> of script entry. </td></tr> </table> </dl> </td> </tr> </table> <a name="b7" doxytag="ScriptInterp::Conditional"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Conditional ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Used to process "conditional" arguments such as for IF/DO/LOOP statements. <p> The index is kept at the next logical argument so a goto can be performed if needed. <p> <dl compact><dt> <b>Returns: </b><dd> true if conditional test is true. </dl> </td> </tr> </table> <a name="a2" doxytag="ScriptInterp::Detach"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Detach ( </b></td> <td valign="bottom"><b> void ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Detach the current script image. <p> If it is the last ref count and the exit flag is set, then delete it. </td> </tr> </table> <a name="b16" doxytag="ScriptInterp::Error"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Error ( </b></td> <td valign="bottom"><b> const char * <em>error</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Set error variable and advance to either the error handler or next script statement. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>error</em> </td><td> message. </td></tr> </table> </dl> </td> </tr> </table> <a name="b23" doxytag="ScriptInterp::Execute"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Execute ( </b></td> <td valign="bottom"><b> <a class="el" href="script_h.html#a0">scriptmethod_t</a> <em>method</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Runtime execution of script handler. <p> This can be called in the current or derived class to invoke extensible methods. <p> <dl compact><dt> <b>Returns: </b><dd> true if immediately ready for next step. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>derived</em> </td><td> method to call. </td></tr> </table> </dl> </td> </tr> </table> <a name="b25" doxytag="ScriptInterp::Exit"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Exit ( </b></td> <td valign="bottom"><b> void )<code> [protected, pure virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Exit request handler. <p> This is called when no script line exists. No default behavior is known. </td> </tr> </table> <a name="b4" doxytag="ScriptInterp::Notify"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Notify ( </b></td> <td valign="bottom"><b> const char * <em>str</em> )<code> [inline, protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Notify signal by symbolic name. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>mask</em> </td><td> name. </td></tr> </table> </dl> </td> </tr> </table> <a name="b3" doxytag="ScriptInterp::Notify"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Notify ( </b></td> <td valign="bottom"><b> unsigned long <em>mask</em> )<code> [inline, protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Notify signal mask for "on" handlers. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>mask</em> </td><td> value. </td></tr> </table> </dl> </td> </tr> </table> <a name="b20" doxytag="ScriptInterp::Pull"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Pull ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Attempt to recall a previous stack level. <p> <dl compact><dt> <b>Returns: </b><dd> false if stack underflow. </dl> </td> </tr> </table> <a name="b19" doxytag="ScriptInterp::Push"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Push ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Attempt to push a value onto the stack. <p> <dl compact><dt> <b>Returns: </b><dd> false if stack overflow. </dl> </td> </tr> </table> <a name="a3" doxytag="ScriptInterp::Redirect"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Redirect ( </b></td> <td valign="bottom"><b> const char * <em>scrname</em> ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Script redirection support. <p> <dl compact><dt> <b>Returns: </b><dd> false if redirect failed. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> of script entry. </td></tr> </table> </dl> </td> </tr> </table> <a name="b22" doxytag="ScriptInterp::Signal"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Signal ( </b></td> <td valign="bottom"><b> unsigned <em>trapid</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Signals can be referenced by numeric id as well as by symbolic name. <p> <dl compact><dt> <b>Returns: </b><dd> true if signal handler is not blocked. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>trap</em> </td><td> number of handler. </td></tr> </table> </dl> </td> </tr> </table> <a name="b21" doxytag="ScriptInterp::Signal"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Signal ( </b></td> <td valign="bottom"><b> const char * <em>trapname</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Signals are used during "delayed" execution steps when a signal event has occured aynchronously with the execution of a script controlled state event handler. <p> This mechanism can be used in place of calling implicit "Step" traps. <p> <dl compact><dt> <b>Returns: </b><dd> true if signal handler is not blocked. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> of signal identifier. </td></tr> </table> </dl> </td> </tr> </table> <a name="a4" doxytag="ScriptInterp::Step"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::Step ( </b></td> <td valign="bottom"><b> const char * <em>trapname</em> = NULL ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Execute the next pending script statement. <p> If no statement is selected, then we execute the exit handler instead. We can also force feed a trap identifier. <p> <dl compact><dt> <b>Returns: </b><dd> true if advanced to next script statement already. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>optional</em> </td><td> trap branch point (also checks mask). </td></tr> </table> </dl> </td> </tr> </table> <a name="b24" doxytag="ScriptInterp::Stop"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Stop ( </b></td> <td valign="bottom"><b> unsigned long <em>mask</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Stop request handler. <p> Used for handling external trap requests during a "Signal". This is needed in some state engines when the current state is being abandoned because of a signaled trap.<dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>signal</em> </td><td> mask forcing stop. </td></tr> </table> </dl> </td> </tr> </table> <a name="b18" doxytag="ScriptInterp::Trap"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Trap ( </b></td> <td valign="bottom"><b> const char * <em>trapname</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap). <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>name</em> </td><td> of trap to select. </td></tr> </table> </dl> </td> </tr> </table> <a name="b17" doxytag="ScriptInterp::Trap"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::Trap ( </b></td> <td valign="bottom"><b> unsigned <em>id</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Set the execution interpreter to a trap identifier. <p> If no trap id exists, then advance to next script statement (unless exit trap).<dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>id</em> </td><td> of trap to select numerically. </td></tr> </table> </dl> </td> </tr> </table> <a name="a15" doxytag="ScriptInterp::autoloop"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::autoloop ( </b></td> <td valign="bottom"><b> bool <em>enable</em> )<code> [inline]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Enable or disable autolooping of statements. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>true</em> </td><td> to enable autoloop (default). </td></tr> </table> </dl> </td> </tr> </table> <a name="b6" doxytag="ScriptInterp::getCommand"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="class_scriptcommand.html">ScriptCommand</a> * ScriptInterp::getCommand ( </b></td> <td valign="bottom"><b> void )<code> [inline, protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch the active command interpreter subsystem. <p> <dl compact><dt> <b>Returns: </b><dd> script interpreter. </dl> </td> </tr> </table> <a name="a10" doxytag="ScriptInterp::getContent"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> char * ScriptInterp::getContent ( </b></td> <td valign="bottom"><b> char * <em>sym</em> ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Evaluate the content of an option retrieved with getOption. <p> <dl compact><dt> <b>Returns: </b><dd> value of evaluation. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>option</em> </td><td> string. </td></tr> </table> </dl> </td> </tr> </table> <a name="b12" doxytag="ScriptInterp::getGlobalTrap"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::getGlobalTrap ( </b></td> <td valign="bottom"><b> unsigned <em>id</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Used to fetch a global trap execution context branch. <p> <dl compact><dt> <b>Returns: </b><dd> true if external global trap handler found. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>trap</em> </td><td> identifier. </td></tr> </table> </dl> </td> </tr> </table> <a name="b11" doxytag="ScriptInterp::getId"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> unsigned ScriptInterp::getId ( </b></td> <td valign="bottom"><b> void )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Used to return channel identifiers in some systems. <p> <dl compact><dt> <b>Returns: </b><dd> channel id or 0 for none. </dl> </td> </tr> </table> <a name="a14" doxytag="ScriptInterp::getImage"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="class_scriptimage.html">ScriptImage</a> * ScriptInterp::getImage ( </b></td> <td valign="bottom"><b> void )<code> [inline]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return the script image holding this application's context. <p> <dl compact><dt> <b>Returns: </b><dd> script image. </dl> </td> </tr> </table> <a name="b14" doxytag="ScriptInterp::getIndirect"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a2">scriptsymbol_t</a> * ScriptInterp::getIndirect ( </b></td> <td valign="bottom"><b> char * <em>sym</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> May be used to override processing of indirect content requests. <p> This is used in the Bayonne IVR to fetch content constants based on language and country settings. <p> <dl compact><dt> <b>Returns: </b><dd> symbol for indirect content. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>indirect</em> </td><td> fetch request. </td></tr> </table> </dl> </td> </tr> </table> <a name="a7" doxytag="ScriptInterp::getKeyword"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> char * ScriptInterp::getKeyword ( </b></td> <td valign="bottom"><b> const char * <em>keyword</em> ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch an embedded attribute keyword argument. <p> This allows embedded tag=value keywords to be extracted. <p> <dl compact><dt> <b>Returns: </b><dd> option or NULL if not found. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>keyword</em> </td><td> to find. </td></tr> </table> </dl> </td> </tr> </table> <a name="a0" doxytag="ScriptInterp::getLocal"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a2">scriptsymbol_t</a> * ScriptInterp::getLocal ( </b></td> <td valign="bottom"><b> const char * <em>name</em>, </b></td> </tr> <tr> <td></td> <td><b> size_t <em>size</em> = 0 ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Search for symbols either thru the virtual global space or thru local space if a local space has been allocated on the heap. <p> <dl compact><dt> <b>Returns: </b><dd> symbol found. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>script</em> </td><td> symbol to look for or create. </td></tr> <tr><td valign=top><em>size</em> </td><td> of symbol to allocate. </td></tr> </table> </dl> </td> </tr> </table> <a name="b5" doxytag="ScriptInterp::getMask"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> unsigned long ScriptInterp::getMask ( </b></td> <td valign="bottom"><b> void )<code> [inline, protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch the current interpreter mask bits directly. <p> <dl compact><dt> <b>Returns: </b><dd> interpreter mask. </dl> </td> </tr> </table> <a name="a12" doxytag="ScriptInterp::getMember"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> const char * ScriptInterp::getMember ( </b></td> <td valign="bottom"><b> void ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return the member id of a script command. <p> <dl compact><dt> <b>Returns: </b><dd> member id or NULL if none. </dl> </td> </tr> </table> <a name="a13" doxytag="ScriptInterp::getObject"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a4">scriptname_t</a> * ScriptInterp::getObject ( </b></td> <td valign="bottom"><b> void )<code> [inline]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return the master script object for resource context. <p> <dl compact><dt> <b>Returns: </b><dd> script object being executed. </dl> </td> </tr> </table> <a name="b2" doxytag="ScriptInterp::getOnce"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::getOnce ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch unique "once" flag and set. <p> <dl compact><dt> <b>Returns: </b><dd> true if once. </dl> </td> </tr> </table> <a name="a6" doxytag="ScriptInterp::getOption"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> char * ScriptInterp::getOption ( </b></td> <td valign="bottom"><b> const char * <em>def</em> = NULL ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch next logical option but do not evaluate. <p> The index is advanced. <p> <dl compact><dt> <b>Returns: </b><dd> option or NULL if end of list. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>optional</em> </td><td> default. </td></tr> </table> </dl> </td> </tr> </table> <a name="a11" doxytag="ScriptInterp::getScript"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a3">scriptline_t</a> * ScriptInterp::getScript ( </b></td> <td valign="bottom"><b> void )<code> [inline]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Return the current script line object so it may be debugged. <p> <dl compact><dt> <b>Returns: </b><dd> script image record being executed. </dl> </td> </tr> </table> <a name="b27" doxytag="ScriptInterp::getScriptCopy"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a4">scriptname_t</a> * ScriptInterp::getScriptCopy ( </b></td> <td valign="bottom"><b> const char * <em>src</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch duplicative script image as needed. <p> <dl compact><dt> <b>Returns: </b><dd> script object. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>label</em> </td><td> to dup. </td></tr> </table> </dl> </td> </tr> </table> <a name="b26" doxytag="ScriptInterp::getScriptImage"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a4">scriptname_t</a> * ScriptInterp::getScriptImage ( </b></td> <td valign="bottom"><b> const char * <em>label</em> )<code> [protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Runtime branch point for label selection. <p> <dl compact><dt> <b>Returns: </b><dd> script found. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>label</em> </td><td> to locate. </td></tr> <tr><td valign=top><em>script</em> </td><td> line associated. </td></tr> </table> </dl> </td> </tr> </table> <a name="b1" doxytag="ScriptInterp::getTrigger"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::getTrigger ( </b></td> <td valign="bottom"><b> bool <em>use</em> )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Get a local and/or global trigger. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>use</em> </td><td> or clear. </td></tr> </table> </dl> </td> </tr> </table> <a name="a9" doxytag="ScriptInterp::getValue"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> char * ScriptInterp::getValue ( </b></td> <td valign="bottom"><b> const char * <em>def</em> = NULL ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch and evaluate next logical option. <p> If a symbol ref. then the symbol is also expressed. The index is advanced. <p> <dl compact><dt> <b>Returns: </b><dd> option value or NULL if end of list. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>optional</em> </td><td> default value. </td></tr> </table> </dl> </td> </tr> </table> <a name="b13" doxytag="ScriptInterp::getVariable"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> <a class="el" href="script_h.html#a2">scriptsymbol_t</a> * ScriptInterp::getVariable ( </b></td> <td valign="bottom"><b> size_t <em>size</em> = 0 )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Fetch a variable (symbol) that will be used to store data. <p> This advances the index. <p> <dl compact><dt> <b>Returns: </b><dd> symbol found if any. </dl><dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>optional</em> </td><td> size to allocate if new symbol. </td></tr> </table> </dl> </td> </tr> </table> <a name="a8" doxytag="ScriptInterp::initKeywords"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> int ScriptInterp::initKeywords ( </b></td> <td valign="bottom"><b> int <em>size</em> ) </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Initialize symbols from the keyword list. <p> </td> </tr> </table> <a name="a5" doxytag="ScriptInterp::isActive"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::isActive ( </b></td> <td valign="bottom"><b> void )<code> [inline]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Test if script interpreter is currently active. <p> <dl compact><dt> <b>Returns: </b><dd> true if active. </dl> </td> </tr> </table> <a name="b10" doxytag="ScriptInterp::scrData"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::scrData ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Method used to encode "data" lines. <p> </td> </tr> </table> <a name="b8" doxytag="ScriptInterp::scrExit"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::scrExit ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Some systems can derive alternative "exit" commands which can call this routine after performing other operations. <p> </td> </tr> </table> <a name="b9" doxytag="ScriptInterp::scrGoto"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> bool ScriptInterp::scrGoto ( </b></td> <td valign="bottom"><b> void )<code> [protected]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> This is often called to process branching requests. <p> </td> </tr> </table> <a name="b28" doxytag="ScriptInterp::sleepScheduler"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::sleepScheduler ( </b></td> <td valign="bottom"><b> timeout_t <em>timeout</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Patch point for sleep delay notification. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>sleep</em> </td><td> timeout expected. </td></tr> </table> </dl> </td> </tr> </table> <a name="b29" doxytag="ScriptInterp::stepScheduler"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> void ScriptInterp::stepScheduler ( </b></td> <td valign="bottom"><b> const char * <em>trapname</em> )<code> [inline, protected, virtual]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Step scheduler callback to force step execution. <p> <dl compact><dt> <b>Parameters: </b><dd> <table border=0 cellspacing=2 cellpadding=0> <tr><td valign=top><em>trap</em> </td><td> name to use. </td></tr> </table> </dl> </td> </tr> </table> <hr><h2>Friends And Related Function Documentation</h2> <a name="l3" doxytag="ScriptInterp::ScriptCommand"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> class ScriptCommand<code> [friend]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l0" doxytag="ScriptInterp::ScriptImage"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> class ScriptImage<code> [friend]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l2" doxytag="ScriptInterp::ScriptModule"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> class ScriptModule<code> [friend]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l1" doxytag="ScriptInterp::ScriptSession"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td nowrap valign="top"><b> class ScriptSession<code> [friend]</code> </b></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="script_h-source.html">script.h</a></ul> <hr><address><small>Generated at Tue Oct 9 20:52:05 2001 for ccscript by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.gif" alt="doxygen" align="middle" border=0 width=110 height=53></a>1.2.5 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, © 1997-2001</small></address> </body> </html>