<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>ost::ScriptInterp class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Generated by Doxygen 1.2.10 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</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="namespacemembers.html">Namespace Members</a> <a class="qindex" href="functions.html">Compound Members</a> </center> <hr><h1>ost::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_8h-source.html">script.h</a>></code> <p> <p>Inheritance diagram for ost::ScriptInterp:: <p><center><img src="classost_1_1_script_interp.gif" usemap="#ost::ScriptInterp_map" border="0"></center> <map name="ost::ScriptInterp_map"> <area href="classost_1_1_script_symbol.html" alt="ost::ScriptSymbol" shape="rect" coords="0,56,114,80"> <area href="class_shared_mem_pager.html" alt="SharedMemPager" shape="rect" coords="0,0,114,24"> </map> <a href="classost_1_1_script_interp-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="namespaceost.html#a5">scriptsymbol_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.html#a8">initKeywords</a> (int size)</td></tr> <tr><td> </td><td><font size=-1><em>Initialize symbols from the keyword list.</em> <a href="#a8">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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="namespaceost.html#a6">scriptline_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="namespaceost.html#a7">scriptname_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_image.html">ScriptImage</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.html#b0">ScriptInterp</a> (<a class="el" href="classost_1_1_script_command.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_command.html">ScriptCommand</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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> <a href="#b8">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="classost_1_1_script_interp.html#b9">scrGoto</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>This is often called to process branching requests.</em> <a href="#b9">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="classost_1_1_script_interp.html#b10">scrData</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Method used to encode "data" lines.</em> <a href="#b10">More...</a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>virtual unsigned </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="namespaceost.html#a5">scriptsymbol_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="namespaceost.html#a5">scriptsymbol_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.html#b15">Advance</a> (void)</td></tr> <tr><td> </td><td><font size=-1><em>Advance program to the next script statement.</em> <a href="#b15">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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.html#b23">Execute</a> (<a class="el" href="namespaceost.html#a3">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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="namespaceost.html#a7">scriptname_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="namespaceost.html#a7">scriptname_t</a> * </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.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="classost_1_1_script_interp.html#l0">ScriptImage</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.html#l1">ScriptSession</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.html#l2">ScriptModule</a></td></tr> <tr><td nowrap align=right valign=top>class </td><td valign=bottom><a class="el" href="classost_1_1_script_interp.html#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: </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="ost::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 class="md" nowrap valign="top"> ost::ScriptInterp::ScriptInterp </td> <td class="md">( </td> <td class="md"><a class="el" href="classost_1_1_script_command.html">ScriptCommand</a> *</td> <td class="mdname"> <em>cmd</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md">size_t</td> <td class="mdname"> <em>symsize</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md">size_t</td> <td class="mdname"> <em>pgsize</em> = 1024</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Advance </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Attach </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>scrname</em> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Conditional </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Detach </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Error </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>error</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> virtual bool ost::ScriptInterp::Execute </td> <td class="md">( </td> <td class="md"><a class="el" href="namespaceost.html#a3">scriptmethod_t</a></td> <td class="mdname1"> <em>method</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> virtual void ost::ScriptInterp::Exit </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected, pure virtual]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Notify </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>str</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Notify </td> <td class="md">( </td> <td class="md">unsigned long</td> <td class="mdname1"> <em>mask</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Pull </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Push </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Redirect </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>scrname</em> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Signal </td> <td class="md">( </td> <td class="md">unsigned</td> <td class="mdname1"> <em>trapid</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Signal </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>trapname</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::Step </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>trapname</em> = NULL </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> virtual void ost::ScriptInterp::Stop </td> <td class="md">( </td> <td class="md">unsigned long</td> <td class="mdname1"> <em>mask</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Trap </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>trapname</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::Trap </td> <td class="md">( </td> <td class="md">unsigned</td> <td class="mdname1"> <em>id</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::autoloop </td> <td class="md">( </td> <td class="md">bool</td> <td class="mdname1"> <em>enable</em> </td> <td class="md">) </td> <td class="md"><code> [inline]</code></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="classost_1_1_script_command.html">ScriptCommand</a>* ost::ScriptInterp::getCommand </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline, protected]</code></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="ost::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 class="md" nowrap valign="top"> char* ost::ScriptInterp::getContent </td> <td class="md">( </td> <td class="md">char *</td> <td class="mdname1"> <em>sym</em> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> virtual bool ost::ScriptInterp::getGlobalTrap </td> <td class="md">( </td> <td class="md">unsigned</td> <td class="mdname1"> <em>id</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> virtual unsigned ost::ScriptInterp::getId </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="classost_1_1_script_image.html">ScriptImage</a>* ost::ScriptInterp::getImage </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline]</code></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="ost::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 class="md" nowrap valign="top"> virtual <a class="el" href="namespaceost.html#a5">scriptsymbol_t</a>* ost::ScriptInterp::getIndirect </td> <td class="md">( </td> <td class="md">char *</td> <td class="mdname1"> <em>sym</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> char* ost::ScriptInterp::getKeyword </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>keyword</em> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="namespaceost.html#a5">scriptsymbol_t</a>* ost::ScriptInterp::getLocal </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname"> <em>name</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md">size_t</td> <td class="mdname"> <em>size</em> = 0</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></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="ost::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 class="md" nowrap valign="top"> unsigned long ost::ScriptInterp::getMask </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline, protected]</code></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="ost::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 class="md" nowrap valign="top"> const char* ost::ScriptInterp::getMember </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="namespaceost.html#a7">scriptname_t</a>* ost::ScriptInterp::getObject </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::getOnce </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> char* ost::ScriptInterp::getOption </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>def</em> = NULL </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="namespaceost.html#a6">scriptline_t</a>* ost::ScriptInterp::getScript </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline]</code></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="namespaceost.html#a7">scriptname_t</a>* ost::ScriptInterp::getScriptCopy </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>src</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> virtual <a class="el" href="namespaceost.html#a7">scriptname_t</a>* ost::ScriptInterp::getScriptImage </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>label</em> </td> <td class="md">) </td> <td class="md"><code> [protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> void ost::ScriptInterp::getTrigger </td> <td class="md">( </td> <td class="md">bool</td> <td class="mdname1"> <em>use</em> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> char* ost::ScriptInterp::getValue </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>def</em> = NULL </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> <a class="el" href="namespaceost.html#a5">scriptsymbol_t</a>* ost::ScriptInterp::getVariable </td> <td class="md">( </td> <td class="md">size_t</td> <td class="mdname1"> <em>size</em> = 0 </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> int ost::ScriptInterp::initKeywords </td> <td class="md">( </td> <td class="md">int</td> <td class="mdname1"> <em>size</em> </td> <td class="md">) </td> <td class="md"></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::isActive </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [inline]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::scrData </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::scrExit </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> bool ost::ScriptInterp::scrGoto </td> <td class="md">( </td> <td class="md">void</td> <td class="mdname1"> </td> <td class="md">) </td> <td class="md"><code> [protected]</code></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="ost::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 class="md" nowrap valign="top"> virtual void ost::ScriptInterp::sleepScheduler </td> <td class="md">( </td> <td class="md">timeout_t</td> <td class="mdname1"> <em>timeout</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> virtual void ost::ScriptInterp::stepScheduler </td> <td class="md">( </td> <td class="md">const char *</td> <td class="mdname1"> <em>trapname</em> </td> <td class="md">) </td> <td class="md"><code> [inline, protected, virtual]</code></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="ost::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 class="md" nowrap valign="top"> friend class ScriptCommand<code> [friend]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l0" doxytag="ost::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 class="md" nowrap valign="top"> friend class ScriptImage<code> [friend]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l2" doxytag="ost::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 class="md" nowrap valign="top"> friend class ScriptModule<code> [friend]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> </td> </tr> </table> <a name="l1" doxytag="ost::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 class="md" nowrap valign="top"> friend class ScriptSession<code> [friend]</code> </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_8h-source.html">script.h</a></ul> <hr><address><small>Generated at Fri Nov 2 09:22:25 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.10 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, © 1997-2001</small></address> </body> </html>