Sophie

Sophie

distrib > Mandriva > 8.2 > i586 > media > contrib > by-pkgid > 070b5c05d42a76a25abd916d2fe11a39 > files > 55

ccscript-1.8.4-2mdk.i586.rpm

<!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> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </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 &lt;<a class="el" href="script_h-source.html">script.h</a>&gt;</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>*&nbsp;</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>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a1">Attach</a> (const char *scrname)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a2">Detach</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a3">Redirect</a> (const char *scrname)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a4">Step</a> (const char *trapname=NULL)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a5">isActive</a> (void)</td></tr>
<tr><td>&nbsp;</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*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a6">getOption</a> (const char *def=NULL)</td></tr>
<tr><td>&nbsp;</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*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a7">getKeyword</a> (const char *keyword)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a8">initKeywords</a> (int size)</td></tr>
<tr><td>&nbsp;</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*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a9">getValue</a> (const char *def=NULL)</td></tr>
<tr><td>&nbsp;</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*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a10">getContent</a> (char *sym)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a11">getScript</a> (void)</td></tr>
<tr><td>&nbsp;</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*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a12">getMember</a> (void)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a13">getObject</a> (void)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a14">getImage</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#a15">autoloop</a> (bool enable)</td></tr>
<tr><td>&nbsp;</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>&nbsp;</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>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b1">getTrigger</a> (bool use)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b2">getOnce</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b3">Notify</a> (unsigned long mask)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b4">Notify</a> (const char *str)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b5">getMask</a> (void)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b6">getCommand</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b7">Conditional</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b8">scrExit</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b9">scrGoto</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b10">scrData</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b11">getId</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b12">getGlobalTrap</a> (unsigned id)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b13">getVariable</a> (size_t size=0)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b14">getIndirect</a> (char *sym)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b15">Advance</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b16">Error</a> (const char *error)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b17">Trap</a> (unsigned id)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b18">Trap</a> (const char *trapname)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b19">Push</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b20">Pull</a> (void)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b21">Signal</a> (const char *trapname)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b22">Signal</a> (unsigned trapid)</td></tr>
<tr><td>&nbsp;</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&nbsp;</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>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b24">Stop</a> (unsigned long mask)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b25">Exit</a> (void)=0</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b26">getScriptImage</a> (const char *label)</td></tr>
<tr><td>&nbsp;</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>*&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b27">getScriptCopy</a> (const char *src)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b28">sleepScheduler</a> (timeout_t timeout)</td></tr>
<tr><td>&nbsp;</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&nbsp;</td><td valign=bottom><a class="el" href="class_scriptinterp.html#b29">stepScheduler</a> (const char *trapname)</td></tr>
<tr><td>&nbsp;</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 &nbsp;</td><td valign=bottom><a class="el" href="#l0">ScriptImage</a></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="#l1">ScriptSession</a></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</td><td valign=bottom><a class="el" href="#l2">ScriptModule</a></td></tr>
<tr><td nowrap align=right valign=top>class &nbsp;</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 &lt;<a href="mailto:dyfet@ostel.com">dyfet@ostel.com</a>&gt; </dl>
<p>
<hr><h2>Constructor &amp; 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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</td><td>
 for default symbol sizing. </td></tr>
<tr><td valign=top><em>pgsize</em>
&nbsp;</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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [protected, pure virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)<code> [inline, protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline, protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [inline, protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</td><td>
 symbol to look for or create. </td></tr>
<tr><td valign=top><em>size</em>
&nbsp;</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&nbsp;)<code> [inline, protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</td><td>
 to locate. </td></tr>
<tr><td valign=top><em>script</em>
&nbsp;</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>&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [inline]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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&nbsp;)<code> [protected]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>&nbsp;)<code> [inline, protected, virtual]</code>
          </b></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </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>
&nbsp;</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>
      &nbsp;
    </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>
      &nbsp;
    </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>
      &nbsp;
    </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>
      &nbsp;
    </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>,
 &copy;&nbsp;1997-2001</small></address>
</body>
</html>