DIFF

class TimerSource

Timer TimerBase Managed

Part of Tools

All members, including inherited

Timer class. Use when you want call function after some time, or repeatedly in time intervals. Call is not executed after the Timer object is deleted.
usage:

class MyObject
{
ref Timer myTimer1;
ref Timer myTimer2;
ref Timer myTimer3;

void MyObject()
{
	myTimer1 = new Timer();
	myTimer1.Run(10, this, "Refresh"); // calls "Refresh" on "this" after 10 seconds

	myTimer2 = new Timer();
	myTimer2.Run(10, this, "Refresh", NULL, true); // calls "Refresh" on "this" every 10 seconds, until Pause or Stop is called

	myTimer3 = new Timer();
	myTimer3.Run(15, this, "Show", new Param1<bool>(false)); // calls "Show" on "this" with one bool argument after 15 seconds
}

void Refresh();
void Show(bool visible);
}

Constructors 1

void Timer(int category = CALL_CATEGORY_SYSTEM)

Members 3

protected Managed m_target
protected string m_function
protected ref Param m_params

Methods 3

void Run(float duration, Managed obj, string fn_name, Param params = NULL, bool loop = false)

Starts timer.

duration
function is executed after this time (in seconds).
obj
target object on which function will be executed
fn_name
name of function (on object "obj") which will be executed
params
function arguments see Param for usage, default NULL (no arguments)
loop
when true, timer is looped endlessly and function is executed after every loop.
References TimerBase.OnStart(), m_function, m_params
Show 1 more, m_target
override protected void OnTimer()
override void Stop()
References TimerBase.Stop(), and m_params