IntervalManageクラス 時間計測


説明

時間を図るためのクラス。

単位はミリ秒(1000分の1秒)。

メンバ関数

void SetInterval(const DWORD interval);

計測する時間間隔をセットする。

パラメータ

interval

	計測する時間間隔をミリ秒単位で指定する。
	1秒であれば「1000」と指定。

戻り値

なし
bool GetTiming();

設定した時間が経過したかどうか調べる。

パラメータ

なし

戻り値

bool

	設定した時間が経過した場合trueを返す。
	経過していない場合はfalseを返す。

注意

なし

1秒ごとにカウンタを増加させるサンプルを書く。

シーンのヘッダファイルでクラスの実体を作成する。
private:

    int m_counter;

    IntervalManage m_imCount;
};

シーンの「Start関数」で時間間隔を設定する。
//=============================================================================
// シーンの実行時に1度だけ呼び出される開始処理関数
//=============================================================================
void SceneGame::Start()
{
    m_pEngine->AddFont(FONT_GOTHIC, 20);

    m_counter = 0;

    m_imCount.SetInterval(1000);
}

シーンの「Update関数」で指定時間が経過したらカウンタを増加する。
//=============================================================================
// シーンの実行時に繰り返し呼び出される更新処理関数
//=============================================================================
void SceneGame::Update()
{
    if (m_imCount.GetTiming()) {
        m_counter++;
    }
}

シーンの「Draw関数」でカウンタを表示する。
//=============================================================================
// シーンの実行時に繰り返し呼び出される描画処理関数
//=============================================================================
void SceneGame::Draw()
{
    m_pEngine->DrawPrintf(0, 0, FONT_GOTHIC, D3DCOLOR_XRGB(255, 255, 255), "Counter = %d", m_counter);
}

1秒に一回カウントアップします。


戻る