タイマ機能もFoundationで提供されます. タイマクラスはUTTimerです. タイマを作成するには
UTTimerIf* timer = UTTimerIf::Create();
とします.UTTimerには以下のAPIがあります.
[Get]Resolution |
分解能の取得と設定 |
[Get]Interval |
周期の取得と設定 |
[Get]Mode |
モードの取得と設定 |
[Get]Callback |
コールバック関数の取得と設定 |
IsStarted |
動いているかどうか |
IsRunning |
コールバック呼び出し中 |
Start |
始動 |
Stop |
停止 |
Call |
コールバック呼び出し |
SetModeで指定できるモードには以下があります.
MULTIEDIA |
マルチメディアタイマ |
THREAD |
独立スレッド |
FRAMEWORK |
Frameworkが提供するタイマ |
IDLE |
Frameworkが提供するアイドルコールバック |
マルチメディアタイマはWindowsが提供する高機能タイマです. 独立スレッドモードでは,タイマ用のスレッドが実行されSleep関数により周期が制御されます. FRAMEWORKとIDLEモードを利用するにはFWAppのCreateTimer関数を用いる必要があります. 基本的にFRAMEWORKモードではGLUTのタイマコールバックが使われ, IDLEモードではGLUTのアイドルコールバックが使われます.
FrameworkモジュールのFWAppを利用する場合は,FWAppのCreateTimer関数を利用する方が便利でしょう.