Sidebar

Home



Expressions V4


Tutorials

How-To

Reference

  Lexical basics
  Type system
  Variables and assignment
  Operators
  Expression rules
  Control flow
  Functions
  Built-in functions
   None and NaN
   Arithmetic
   Algebra
   Logarithmic and Exponential
   Trigonometric
   Rounding and Centering
   Strings
   Output, Formatting, Clipboard, and Errors
   Dialog Functions
   Platform and Paths
  Methods and properties
  Built-in methods
   Common Value Methods
   Number Methods
   String Basic Methods
   String Slice Methods
   String Parsing Methods
   String Formatting Methods
   String Regex Methods
   String Trim and Case Methods
  Objects
  Built-in objects
   Global objects
    settings
    controller
    session
    python
   Collections
    array
    map
    bytes
   File Format I/O
    image_data
    image_stream
   Utils
    crypto
    timer
   Comm
    serial
   Dialogs
    file_open
    file_save
    msg_ok
    msg_ok_cancel
    msg_yes_no
    msg_password
   GUI objects
    window
    panel
    group
    splitpanel
    label
    textbutton
    drawablebutton
    togglebutton
    togglegroup
    textinput
    textedit
    numinput
    slider
    combobox
    listbox
    progressbar
    led
    separator
    menu
    image
    snake
  Classes and user-defined objects
  Include system
  Error model
  Execution model and sessions
  Host integration
  Limits and performance
  Formal reference
  Glossary

Cookbook

exprv4:reference:objects:timer

timer

`timer` calls a callback repeatedly from a timer thread.

The callback receives one argument: the timer call count. The first callback receives `1`.

`timer` is not cloneable because it owns active timer state and a callback reference.

Constructor

timer(callback)

Creates a timer object using a callable object.

Argument Type Description
`callback` callable object Function reference, method reference, or other object that implements `call(count)`.

Returns: timer object.

Example:

function OnTimer(count)
{
    print('timer ', count);
}
 
t = timer(OnTimer);

Properties

`timer` has no object-specific properties.

Use `is_running()` to check whether the timer is active.


Common Object Methods

to_string()

Returns a display string for the object.

Item Description
Syntax `value.to_string()`
Arguments none
Returns string

Example:

text = value.to_string();

`clone()` is not supported for `timer`.


Methods

start(intervalMs)

Starts the timer.

Argument Type Description
`intervalMs` number Timer interval in milliseconds. Values less than or equal to zero are treated as `1`.

Returns: boolean-style number.

Example:

t = timer(OnTimer);
t.start(1000);

start(intervalMs, count)

Starts the timer with a repeat count.

Argument Type Description
`intervalMs` number Timer interval in milliseconds. Values less than or equal to zero are treated as `1`.
`count` number Number of callbacks. Values less than or equal to zero mean continuous periodic execution.

Returns: boolean-style number.

Example:

t = timer(OnTimer);
t.start(500, 3);     // call OnTimer three times

stop()

Stops the timer.

Item Description
Syntax `timer.stop()`
Arguments none
Returns boolean-style number

Returns `true` if the timer was running, otherwise returns `false`.

Example:

t.stop();

is_running()

Returns true while the timer is running.

Item Description
Syntax `timer.is_running()`
Arguments none
Returns boolean-style number

Example:

if (t.is_running())
{
    print('timer is active');
}

help()

Returns a short text summary of timer methods.

Item Description
Syntax `timer.help()`
Arguments none
Returns string

Callback Errors

If the callback raises an error, the timer prints a timer callback error message and stops.

Previous: crypto

Next: Comm

exprv4/reference/objects/timer.txt · Last modified: by andrej

Page Tools