Sophie

Sophie

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

ccscript-1.8.4-2mdk.i586.rpm

\section{Script\-Interp  Class Reference}
\label{class_scriptinterp}\index{ScriptInterp@{Script\-Interp}}
System script interpreter core engine class. Extensible Bayonne Scripting Engine. 


{\tt \#include $<$script.h$>$}

Inheritance diagram for Script\-Interp:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3cm]{class_scriptinterp}
\end{center}
\end{figure}
\subsection*{Public Methods}
\begin{CompactItemize}
\item 
{\bf scriptsymbol\_\-t}$\ast$ {\bf get\-Local} (const char $\ast$name, size\_\-t size=0)
\begin{CompactList}\small\item\em Search for symbols either thru the virtual global space or thru local space if a local space has been allocated on the heap.\item\end{CompactList}\item 
bool {\bf Attach} (const char $\ast$scrname)
\begin{CompactList}\small\item\em Attempt to attach script engine to active session and specify a starting script.\item\end{CompactList}\item 
void {\bf Detach} (void)
\begin{CompactList}\small\item\em Detach the current script image.\item\end{CompactList}\item 
bool {\bf Redirect} (const char $\ast$scrname)
\begin{CompactList}\small\item\em Script redirection support.\item\end{CompactList}\item 
bool {\bf Step} (const char $\ast$trapname=NULL)
\begin{CompactList}\small\item\em Execute the next pending script statement.\item\end{CompactList}\item 
bool {\bf is\-Active} (void)
\begin{CompactList}\small\item\em Test if script interpreter is currently active.\item\end{CompactList}\item 
char$\ast$ {\bf get\-Option} (const char $\ast$def=NULL)
\begin{CompactList}\small\item\em Fetch next logical option but do not evaluate.\item\end{CompactList}\item 
char$\ast$ {\bf get\-Keyword} (const char $\ast$keyword)
\begin{CompactList}\small\item\em Fetch an embedded attribute keyword argument.\item\end{CompactList}\item 
int {\bf init\-Keywords} (int size)
\begin{CompactList}\small\item\em Initialize symbols from the keyword list.\item\end{CompactList}\item 
char$\ast$ {\bf get\-Value} (const char $\ast$def=NULL)
\begin{CompactList}\small\item\em Fetch and evaluate next logical option.\item\end{CompactList}\item 
char$\ast$ {\bf get\-Content} (char $\ast$sym)
\begin{CompactList}\small\item\em Evaluate the content of an option retrieved with get\-Option.\item\end{CompactList}\item 
{\bf scriptline\_\-t}$\ast$ {\bf get\-Script} (void)
\begin{CompactList}\small\item\em Return the current script line object so it may be debugged.\item\end{CompactList}\item 
const char$\ast$ {\bf get\-Member} (void)
\begin{CompactList}\small\item\em Return the member id of a script command.\item\end{CompactList}\item 
{\bf scriptname\_\-t}$\ast$ {\bf get\-Object} (void)
\begin{CompactList}\small\item\em Return the master script object for resource context.\item\end{CompactList}\item 
{\bf Script\-Image}$\ast$ {\bf get\-Image} (void)
\begin{CompactList}\small\item\em Return the script image holding this application's context.\item\end{CompactList}\item 
void {\bf autoloop} (bool enable)
\begin{CompactList}\small\item\em Enable or disable autolooping of statements.\item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Methods}
\begin{CompactItemize}
\item 
{\bf Script\-Interp} ({\bf Script\-Command} $\ast$cmd, size\_\-t symsize, size\_\-t pgsize=1024)
\begin{CompactList}\small\item\em Derive a new instance of the system script interpreter.\item\end{CompactList}\item 
void {\bf get\-Trigger} (bool use)
\begin{CompactList}\small\item\em Get a local and/or global trigger.\item\end{CompactList}\item 
bool {\bf get\-Once} (void)
\begin{CompactList}\small\item\em Fetch unique "once" flag and set.\item\end{CompactList}\item 
void {\bf Notify} (unsigned long mask)
\begin{CompactList}\small\item\em Notify signal mask for "on" handlers.\item\end{CompactList}\item 
void {\bf Notify} (const char $\ast$str)
\begin{CompactList}\small\item\em Notify signal by symbolic name.\item\end{CompactList}\item 
unsigned long {\bf get\-Mask} (void)
\begin{CompactList}\small\item\em Fetch the current interpreter mask bits directly.\item\end{CompactList}\item 
{\bf Script\-Command}$\ast$ {\bf get\-Command} (void)
\begin{CompactList}\small\item\em Fetch the active command interpreter subsystem.\item\end{CompactList}\item 
bool {\bf Conditional} (void)
\begin{CompactList}\small\item\em Used to process "conditional" arguments such as for IF/DO/LOOP statements.\item\end{CompactList}\item 
bool {\bf scr\-Exit} (void)
\begin{CompactList}\small\item\em Some systems can derive alternative "exit" commands which can call this routine after performing other operations.\item\end{CompactList}\item 
bool {\bf scr\-Goto} (void)
\begin{CompactList}\small\item\em This is often called to process branching requests.\item\end{CompactList}\item 
bool {\bf scr\-Data} (void)
\begin{CompactList}\small\item\em Method used to encode "data" lines.\item\end{CompactList}\item 
virtual unsigned {\bf get\-Id} (void)
\begin{CompactList}\small\item\em Used to return channel identifiers in some systems.\item\end{CompactList}\item 
virtual bool {\bf get\-Global\-Trap} (unsigned id)
\begin{CompactList}\small\item\em Used to fetch a global trap execution context branch.\item\end{CompactList}\item 
{\bf scriptsymbol\_\-t}$\ast$ {\bf get\-Variable} (size\_\-t size=0)
\begin{CompactList}\small\item\em Fetch a variable (symbol) that will be used to store data.\item\end{CompactList}\item 
virtual {\bf scriptsymbol\_\-t}$\ast$ {\bf get\-Indirect} (char $\ast$sym)
\begin{CompactList}\small\item\em May be used to override processing of indirect content requests.\item\end{CompactList}\item 
void {\bf Advance} (void)
\begin{CompactList}\small\item\em Advance program to the next script statement.\item\end{CompactList}\item 
void {\bf Error} (const char $\ast$error)
\begin{CompactList}\small\item\em Set error variable and advance to either the error handler or next script statement.\item\end{CompactList}\item 
void {\bf Trap} (unsigned id)
\begin{CompactList}\small\item\em Set the execution interpreter to a trap identifier.\item\end{CompactList}\item 
void {\bf Trap} (const char $\ast$trapname)
\begin{CompactList}\small\item\em Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap).\item\end{CompactList}\item 
bool {\bf Push} (void)
\begin{CompactList}\small\item\em Attempt to push a value onto the stack.\item\end{CompactList}\item 
bool {\bf Pull} (void)
\begin{CompactList}\small\item\em Attempt to recall a previous stack level.\item\end{CompactList}\item 
bool {\bf Signal} (const char $\ast$trapname)
\begin{CompactList}\small\item\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.\item\end{CompactList}\item 
bool {\bf Signal} (unsigned trapid)
\begin{CompactList}\small\item\em Signals can be referenced by numeric id as well as by symbolic name.\item\end{CompactList}\item 
virtual bool {\bf Execute} ({\bf scriptmethod\_\-t} method)
\begin{CompactList}\small\item\em Runtime execution of script handler.\item\end{CompactList}\item 
virtual void {\bf Stop} (unsigned long mask)
\begin{CompactList}\small\item\em Stop request handler.\item\end{CompactList}\item 
virtual void {\bf Exit} (void)=0
\begin{CompactList}\small\item\em Exit request handler.\item\end{CompactList}\item 
virtual {\bf scriptname\_\-t}$\ast$ {\bf get\-Script\-Image} (const char $\ast$label)
\begin{CompactList}\small\item\em Runtime branch point for label selection.\item\end{CompactList}\item 
{\bf scriptname\_\-t}$\ast$ {\bf get\-Script\-Copy} (const char $\ast$src)
\begin{CompactList}\small\item\em Fetch duplicative script image as needed.\item\end{CompactList}\item 
virtual void {\bf sleep\-Scheduler} (timeout\_\-t timeout)
\begin{CompactList}\small\item\em Patch point for sleep delay notification.\item\end{CompactList}\item 
virtual void {\bf step\-Scheduler} (const char $\ast$trapname)
\begin{CompactList}\small\item\em Step scheduler callback to force step execution.\item\end{CompactList}\end{CompactItemize}
\subsection*{Friends}
\begin{CompactItemize}
\item 
class {\bf Script\-Image}
\item 
class {\bf Script\-Session}
\item 
class {\bf Script\-Module}
\item 
class {\bf Script\-Command}
\end{CompactItemize}


\subsection{Detailed Description}
System script interpreter core engine class. Extensible Bayonne Scripting Engine.

This class is further derived to impliment application specific language dialects.

\begin{Desc}
\item[{\bf Author(s): }]\par
 David Sugar $<${\tt dyfet@ostel.com}$>$ \end{Desc}




\subsection{Constructor \& Destructor Documentation}
\index{ScriptInterp@{Script\-Interp}!ScriptInterp@{ScriptInterp}}
\index{ScriptInterp@{ScriptInterp}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}Script\-Interp::Script\-Interp ({\bf Script\-Command} $\ast$ {\em cmd}, size\_\-t {\em symsize}, size\_\-t {\em pgsize} = 1024)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b0}


Derive a new instance of the system script interpreter.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em symsize}] for default symbol sizing. \item[
{\em pgsize}] for memory fragmentation. \end{description}
\end{Desc}


\subsection{Member Function Documentation}
\index{ScriptInterp@{Script\-Interp}!Advance@{Advance}}
\index{Advance@{Advance}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Advance (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b15}


Advance program to the next script statement.

\index{ScriptInterp@{Script\-Interp}!Attach@{Attach}}
\index{Attach@{Attach}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Attach (const char $\ast$ {\em scrname})}\label{class_scriptinterp_a1}


Attempt to attach script engine to active session and specify a starting script.

\begin{Desc}
\item[{\bf Returns: }]\par
 false if failed to attach. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em name}] of script entry. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Conditional@{Conditional}}
\index{Conditional@{Conditional}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Conditional (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b7}


Used to process "conditional" arguments such as for IF/DO/LOOP statements.

The index is kept at the next logical argument so a goto can be performed if needed.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if conditional test is true. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!Detach@{Detach}}
\index{Detach@{Detach}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Detach (void)}\label{class_scriptinterp_a2}


Detach the current script image.

If it is the last ref count and the exit flag is set, then delete it. \index{ScriptInterp@{Script\-Interp}!Error@{Error}}
\index{Error@{Error}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Error (const char $\ast$ {\em error})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b16}


Set error variable and advance to either the error handler or next script statement.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em error}] message. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Execute@{Execute}}
\index{Execute@{Execute}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Execute ({\bf scriptmethod\_\-t} {\em method})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b23}


Runtime execution of script handler.

This can be called in the current or derived class to invoke extensible methods.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if immediately ready for next step. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em derived}] method to call. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Exit@{Exit}}
\index{Exit@{Exit}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Exit (void)\hspace{0.3cm}{\tt  [protected, pure virtual]}}\label{class_scriptinterp_b25}


Exit request handler.

This is called when no script line exists. No default behavior is known. \index{ScriptInterp@{Script\-Interp}!Notify@{Notify}}
\index{Notify@{Notify}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Notify (const char $\ast$ {\em str})\hspace{0.3cm}{\tt  [inline, protected]}}\label{class_scriptinterp_b4}


Notify signal by symbolic name.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em mask}] name. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Notify@{Notify}}
\index{Notify@{Notify}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Notify (unsigned long {\em mask})\hspace{0.3cm}{\tt  [inline, protected]}}\label{class_scriptinterp_b3}


Notify signal mask for "on" handlers.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em mask}] value. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Pull@{Pull}}
\index{Pull@{Pull}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Pull (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b20}


Attempt to recall a previous stack level.

\begin{Desc}
\item[{\bf Returns: }]\par
 false if stack underflow. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!Push@{Push}}
\index{Push@{Push}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Push (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b19}


Attempt to push a value onto the stack.

\begin{Desc}
\item[{\bf Returns: }]\par
 false if stack overflow. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!Redirect@{Redirect}}
\index{Redirect@{Redirect}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Redirect (const char $\ast$ {\em scrname})}\label{class_scriptinterp_a3}


Script redirection support.

\begin{Desc}
\item[{\bf Returns: }]\par
 false if redirect failed. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em name}] of script entry. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Signal@{Signal}}
\index{Signal@{Signal}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Signal (unsigned {\em trapid})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b22}


Signals can be referenced by numeric id as well as by symbolic name.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if signal handler is not blocked. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em trap}] number of handler. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Signal@{Signal}}
\index{Signal@{Signal}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Signal (const char $\ast$ {\em trapname})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b21}


Signals are used during "delayed" execution steps when a signal event has occured aynchronously with the execution of a script controlled state event handler.

This mechanism can be used in place of calling implicit "Step" traps.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if signal handler is not blocked. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em name}] of signal identifier. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Step@{Step}}
\index{Step@{Step}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::Step (const char $\ast$ {\em trapname} = NULL)}\label{class_scriptinterp_a4}


Execute the next pending script statement.

If no statement is selected, then we execute the exit handler instead. We can also force feed a trap identifier.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if advanced to next script statement already. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em optional}] trap branch point (also checks mask). \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Stop@{Stop}}
\index{Stop@{Stop}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Stop (unsigned long {\em mask})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b24}


Stop request handler.

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.\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em signal}] mask forcing stop. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Trap@{Trap}}
\index{Trap@{Trap}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Trap (const char $\ast$ {\em trapname})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b18}


Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap).

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em name}] of trap to select. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!Trap@{Trap}}
\index{Trap@{Trap}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::Trap (unsigned {\em id})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b17}


Set the execution interpreter to a trap identifier.

If no trap id exists, then advance to next script statement (unless exit trap).\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em id}] of trap to select numerically. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!autoloop@{autoloop}}
\index{autoloop@{autoloop}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::autoloop (bool {\em enable})\hspace{0.3cm}{\tt  [inline]}}\label{class_scriptinterp_a15}


Enable or disable autolooping of statements.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em true}] to enable autoloop (default). \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getCommand@{getCommand}}
\index{getCommand@{getCommand}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Script\-Command} $\ast$ Script\-Interp::get\-Command (void)\hspace{0.3cm}{\tt  [inline, protected]}}\label{class_scriptinterp_b6}


Fetch the active command interpreter subsystem.

\begin{Desc}
\item[{\bf Returns: }]\par
 script interpreter. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getContent@{getContent}}
\index{getContent@{getContent}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ Script\-Interp::get\-Content (char $\ast$ {\em sym})}\label{class_scriptinterp_a10}


Evaluate the content of an option retrieved with get\-Option.

\begin{Desc}
\item[{\bf Returns: }]\par
 value of evaluation. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em option}] string. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getGlobalTrap@{getGlobalTrap}}
\index{getGlobalTrap@{getGlobalTrap}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::get\-Global\-Trap (unsigned {\em id})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b12}


Used to fetch a global trap execution context branch.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if external global trap handler found. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em trap}] identifier. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getId@{getId}}
\index{getId@{getId}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned Script\-Interp::get\-Id (void)\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b11}


Used to return channel identifiers in some systems.

\begin{Desc}
\item[{\bf Returns: }]\par
 channel id or 0 for none. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getImage@{getImage}}
\index{getImage@{getImage}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Script\-Image} $\ast$ Script\-Interp::get\-Image (void)\hspace{0.3cm}{\tt  [inline]}}\label{class_scriptinterp_a14}


Return the script image holding this application's context.

\begin{Desc}
\item[{\bf Returns: }]\par
 script image. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getIndirect@{getIndirect}}
\index{getIndirect@{getIndirect}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptsymbol\_\-t} $\ast$ Script\-Interp::get\-Indirect (char $\ast$ {\em sym})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b14}


May be used to override processing of indirect content requests.

This is used in the Bayonne IVR to fetch content constants based on language and country settings.

\begin{Desc}
\item[{\bf Returns: }]\par
 symbol for indirect content. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em indirect}] fetch request. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getKeyword@{getKeyword}}
\index{getKeyword@{getKeyword}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ Script\-Interp::get\-Keyword (const char $\ast$ {\em keyword})}\label{class_scriptinterp_a7}


Fetch an embedded attribute keyword argument.

This allows embedded tag=value keywords to be extracted.

\begin{Desc}
\item[{\bf Returns: }]\par
 option or NULL if not found. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em keyword}] to find. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getLocal@{getLocal}}
\index{getLocal@{getLocal}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptsymbol\_\-t} $\ast$ Script\-Interp::get\-Local (const char $\ast$ {\em name}, size\_\-t {\em size} = 0)}\label{class_scriptinterp_a0}


Search for symbols either thru the virtual global space or thru local space if a local space has been allocated on the heap.

\begin{Desc}
\item[{\bf Returns: }]\par
 symbol found. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em script}] symbol to look for or create. \item[
{\em size}] of symbol to allocate. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getMask@{getMask}}
\index{getMask@{getMask}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned long Script\-Interp::get\-Mask (void)\hspace{0.3cm}{\tt  [inline, protected]}}\label{class_scriptinterp_b5}


Fetch the current interpreter mask bits directly.

\begin{Desc}
\item[{\bf Returns: }]\par
 interpreter mask. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getMember@{getMember}}
\index{getMember@{getMember}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Script\-Interp::get\-Member (void)}\label{class_scriptinterp_a12}


Return the member id of a script command.

\begin{Desc}
\item[{\bf Returns: }]\par
 member id or NULL if none. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getObject@{getObject}}
\index{getObject@{getObject}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptname\_\-t} $\ast$ Script\-Interp::get\-Object (void)\hspace{0.3cm}{\tt  [inline]}}\label{class_scriptinterp_a13}


Return the master script object for resource context.

\begin{Desc}
\item[{\bf Returns: }]\par
 script object being executed. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getOnce@{getOnce}}
\index{getOnce@{getOnce}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::get\-Once (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b2}


Fetch unique "once" flag and set.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if once. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getOption@{getOption}}
\index{getOption@{getOption}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ Script\-Interp::get\-Option (const char $\ast$ {\em def} = NULL)}\label{class_scriptinterp_a6}


Fetch next logical option but do not evaluate.

The index is advanced.

\begin{Desc}
\item[{\bf Returns: }]\par
 option or NULL if end of list. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em optional}] default. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getScript@{getScript}}
\index{getScript@{getScript}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptline\_\-t} $\ast$ Script\-Interp::get\-Script (void)\hspace{0.3cm}{\tt  [inline]}}\label{class_scriptinterp_a11}


Return the current script line object so it may be debugged.

\begin{Desc}
\item[{\bf Returns: }]\par
 script image record being executed. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!getScriptCopy@{getScriptCopy}}
\index{getScriptCopy@{getScriptCopy}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptname\_\-t} $\ast$ Script\-Interp::get\-Script\-Copy (const char $\ast$ {\em src})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b27}


Fetch duplicative script image as needed.

\begin{Desc}
\item[{\bf Returns: }]\par
 script object. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em label}] to dup. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getScriptImage@{getScriptImage}}
\index{getScriptImage@{getScriptImage}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptname\_\-t} $\ast$ Script\-Interp::get\-Script\-Image (const char $\ast$ {\em label})\hspace{0.3cm}{\tt  [protected, virtual]}}\label{class_scriptinterp_b26}


Runtime branch point for label selection.

\begin{Desc}
\item[{\bf Returns: }]\par
 script found. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em label}] to locate. \item[
{\em script}] line associated. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getTrigger@{getTrigger}}
\index{getTrigger@{getTrigger}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::get\-Trigger (bool {\em use})\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b1}


Get a local and/or global trigger.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em use}] or clear. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getValue@{getValue}}
\index{getValue@{getValue}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char $\ast$ Script\-Interp::get\-Value (const char $\ast$ {\em def} = NULL)}\label{class_scriptinterp_a9}


Fetch and evaluate next logical option.

If a symbol ref. then the symbol is also expressed. The index is advanced.

\begin{Desc}
\item[{\bf Returns: }]\par
 option value or NULL if end of list. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em optional}] default value. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!getVariable@{getVariable}}
\index{getVariable@{getVariable}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf scriptsymbol\_\-t} $\ast$ Script\-Interp::get\-Variable (size\_\-t {\em size} = 0)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b13}


Fetch a variable (symbol) that will be used to store data.

This advances the index.

\begin{Desc}
\item[{\bf Returns: }]\par
 symbol found if any. \end{Desc}
\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em optional}] size to allocate if new symbol. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!initKeywords@{initKeywords}}
\index{initKeywords@{initKeywords}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Script\-Interp::init\-Keywords (int {\em size})}\label{class_scriptinterp_a8}


Initialize symbols from the keyword list.

\index{ScriptInterp@{Script\-Interp}!isActive@{isActive}}
\index{isActive@{isActive}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::is\-Active (void)\hspace{0.3cm}{\tt  [inline]}}\label{class_scriptinterp_a5}


Test if script interpreter is currently active.

\begin{Desc}
\item[{\bf Returns: }]\par
 true if active. \end{Desc}
\index{ScriptInterp@{Script\-Interp}!scrData@{scrData}}
\index{scrData@{scrData}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::scr\-Data (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b10}


Method used to encode "data" lines.

\index{ScriptInterp@{Script\-Interp}!scrExit@{scrExit}}
\index{scrExit@{scrExit}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::scr\-Exit (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b8}


Some systems can derive alternative "exit" commands which can call this routine after performing other operations.

\index{ScriptInterp@{Script\-Interp}!scrGoto@{scrGoto}}
\index{scrGoto@{scrGoto}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool Script\-Interp::scr\-Goto (void)\hspace{0.3cm}{\tt  [protected]}}\label{class_scriptinterp_b9}


This is often called to process branching requests.

\index{ScriptInterp@{Script\-Interp}!sleepScheduler@{sleepScheduler}}
\index{sleepScheduler@{sleepScheduler}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::sleep\-Scheduler (timeout\_\-t {\em timeout})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b28}


Patch point for sleep delay notification.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em sleep}] timeout expected. \end{description}
\end{Desc}
\index{ScriptInterp@{Script\-Interp}!stepScheduler@{stepScheduler}}
\index{stepScheduler@{stepScheduler}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Script\-Interp::step\-Scheduler (const char $\ast$ {\em trapname})\hspace{0.3cm}{\tt  [inline, protected, virtual]}}\label{class_scriptinterp_b29}


Step scheduler callback to force step execution.

\begin{Desc}
\item[{\bf Parameters: }]\par
\begin{description}
\item[
{\em trap}] name to use. \end{description}
\end{Desc}


\subsection{Friends And Related Function Documentation}
\index{ScriptInterp@{Script\-Interp}!ScriptCommand@{ScriptCommand}}
\index{ScriptCommand@{ScriptCommand}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}class Script\-Command\hspace{0.3cm}{\tt  [friend]}}\label{class_scriptinterp_l3}


\index{ScriptInterp@{Script\-Interp}!ScriptImage@{ScriptImage}}
\index{ScriptImage@{ScriptImage}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}class Script\-Image\hspace{0.3cm}{\tt  [friend]}}\label{class_scriptinterp_l0}


\index{ScriptInterp@{Script\-Interp}!ScriptModule@{ScriptModule}}
\index{ScriptModule@{ScriptModule}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}class Script\-Module\hspace{0.3cm}{\tt  [friend]}}\label{class_scriptinterp_l2}


\index{ScriptInterp@{Script\-Interp}!ScriptSession@{ScriptSession}}
\index{ScriptSession@{ScriptSession}!ScriptInterp@{Script\-Interp}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}class Script\-Session\hspace{0.3cm}{\tt  [friend]}}\label{class_scriptinterp_l1}




The documentation for this class was generated from the following file:\begin{CompactItemize}
\item 
{\bf script.h}\end{CompactItemize}