Programmer Guide/Macro Library/CObjEx: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
*'''Title''': Base class for objects used in script applications | *'''Title''': Base class for objects used in script applications | ||
*'''Parent''': [[Programmer_Guide/Macro_Library/CObj|CObj]], '''Derived classes''': [[Programmer_Guide/Macro_Library/XPlot|XPlot]], [[Programmer_Guide/Macro_Library/XGraph|XGraph]], [[Programmer_Guide/Macro_Library/XWave|XWave]] | *'''Parent''': [[Programmer_Guide/Macro_Library/CObj|CObj]], '''Derived classes''': [[Programmer_Guide/Macro_Library/XPlot|XPlot]], [[Programmer_Guide/Macro_Library/XGraph|XGraph]], [[Programmer_Guide/Macro_Library/XWave|XWave]] | ||
The class <code>CObjEx</code> is an enhanced base class designed for objects which are used in {{STX}} scripts. Objects based on this class are deleted automatically before the script application is finished. By convention a class based on <code>CObjEx</code> implements the following simple instantiation method: | The class <code>CObjEx</code> is an enhanced base class designed for objects which are used in {{STX}} scripts. Objects based on this class are deleted automatically before the script application is finished. By convention a class based on <code>CObjEx</code> implements the following simple instantiation method: | ||
::<code> cobjExInstance := cobjExClassName <var>constructionArguments</var> </code> | ::<code> cobjExInstance := cobjExClassName <var>constructionArguments</var> </code> | ||
;Constructor: The default constructor calls the CObj constructor and writes a construct-message in the console window. The function takes no arguments and returns always 0 (success). It must be called by derived classes. | ;Constructor: The default constructor calls the CObj constructor and writes a construct-message in the console window. The function takes no arguments and returns always 0 (success). It must be called by derived classes. | ||
;Destructor: The default constructor stops and deletes the internal timer (&logTimerItem), calls the CObj constructor and writes a destruct-message in the console window. It must be called by derived classes. | ;Destructor: The default constructor stops and deletes the internal timer (&logTimerItem), calls the CObj constructor and writes a destruct-message in the console window. It must be called by derived classes. | ||
;Member functions: [[#Cleanup|Cleanup (static)]], | |||
;Member functions: [[#Cleanup|Cleanup (static)]], [[#Log|Log]], [[#LogExt|LogExt]], [[#ELog|ELog]], [[#LogError|LogError]], [[#LogTimer|LogTimer]] | |||
====Cleanup==== | ====Cleanup==== |
Revision as of 09:13, 5 June 2012
- File: CLASSES.STX, linked to library STX.LIB
- Title: Base class for objects used in script applications
- Parent: CObj, Derived classes: XPlot, XGraph, XWave
The class CObjEx
is an enhanced base class designed for objects which are used in STx scripts. Objects based on this class are deleted automatically before the script application is finished. By convention a class based on CObjEx
implements the following simple instantiation method:
cobjExInstance := cobjExClassName constructionArguments
- Constructor
- The default constructor calls the CObj constructor and writes a construct-message in the console window. The function takes no arguments and returns always 0 (success). It must be called by derived classes.
- Destructor
- The default constructor stops and deletes the internal timer (&logTimerItem), calls the CObj constructor and writes a destruct-message in the console window. It must be called by derived classes.
Cleanup
static
CObjEx Cleanup
Delete all instances of classes based on CObjEx
. This function is called automatically by the script processor (BScript
) before the script application exits.
ELog
cobjex ELog level ; result ; text
-
- level
- The number of macro levels to return (
2
means: return from calling-macro). - result
- The result to set on returning.
- text
- The text to write to the console window.
- Result
- The value of the argument result. Note: This value is returned to macro addressed by argument level.
- Description
- Writes the message
class-instance: ERROR - text
to the script console and exits from level macros with the return value result.
log
Write the message "class-instance:
text" to the script console.
Log
cobjex log text
Parameters:
- text
- The text to write to the log window.
logError
Writes the message "class-instance: ERROR - text" to the script console and exits from 2 macros with the return value 'result'.
Usage:
cobjex logError result; text
Parameters:
- result
- The result to assign after returning.
- text
- The text to write to the console window.
LogExt
Write text to the CON
log window with the option of overwriting the last line. This is useful for progress reports.
Usage:
inst LogExt mode ; text
Parameters:
- mode
- If
0
, the text overwrites the last log window line. If1
, the text is appended to the last log window line.
- text
- The text to write to the log window.
LogTimer
Start or stop the internal BScript
timer. The elapsed time is written to the CON log window.
Usage:
inst LogTimer cmd
Parameters:
- cmd
- One of the following:
ON
|BEGIN
- Start the timer. If the timer has already been started, then the elapsed time in seconds is returned. The elapsed time is also displayed in the CON window.
OFF
|END
- Stop the timer. The elapsed time is also displayed in the CON window.