ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

Common::TimerManager Class Reference

#include <timer.h>

Inheritance diagram for Common::TimerManager:
Collaboration diagram for Common::TimerManager:

List of all members.

Public Types

typedef void(* TimerProc )(void *refCon)

Public Member Functions

virtual ~TimerManager ()
virtual bool installTimerProc (TimerProc proc, int32 interval, void *refCon, const Common::String &id)=0
 Install a new timer callback.
virtual void removeTimerProc (TimerProc proc)=0
 Remove the given timer callback.

Detailed Description

Definition at line 32 of file timer.h.

Member Typedef Documentation

typedef void(* Common::TimerManager::TimerProc)(void *refCon)

Definition at line 34 of file timer.h.

Constructor & Destructor Documentation

virtual Common::TimerManager::~TimerManager (  )  [inline, virtual]

Definition at line 36 of file timer.h.

Member Function Documentation

virtual bool Common::TimerManager::installTimerProc ( TimerProc  proc,
int32  interval,
void *  refCon,
const Common::String id 
) [pure virtual]

Install a new timer callback.

It will from now be called every interval microseconds. The timer may be invoked from a separate thread. Hence any timer code should be written following the same safety guidelines as any other threaded code.

Although the interval is specified in microseconds, the actual timer resolution may be lower. In particular, with the SDL backend the timer resolution is 10ms.
proc the callback
interval the interval in which the timer shall be invoked (in microseconds)
refCon an arbitrary void pointer; will be passed to the timer callback
id unique string id of the installed timer. Used by the event recorder
true if the timer was installed successfully, false otherwise

Implemented in DefaultTimerManager.

virtual void Common::TimerManager::removeTimerProc ( TimerProc  proc  )  [pure virtual]

Remove the given timer callback.

It will not be invoked anymore, and no instance of this callback will be running anymore.

Implemented in DefaultTimerManager.

The documentation for this class was generated from the following file:

Generated on Sat Sep 12 2020 05:04:29 for ResidualVM by doxygen 1.7.1
curved edge   curved edge