Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

Lamp::FPSController Class Reference

FPSコントローラ. More...

#include <FPSController.h>

List of all members.

Public Member Functions

 FPSController (float targetInterval=interval60FPS)
 コンストラクタ

virtual ~FPSController ()
 デストラクタ

virtual void setTargetInterval (float targetInterval)
 目標時間間隔の設定

virtual float getTargetInterval () const
 目標時間間隔の取得

virtual float sleep ()
 FPSを維持するためにカレントスレッドをsleepする.

virtual float getIntervalTime () const
 インターバルの取得

virtual float getSleepTime () const
 スリープ時間の取得

virtual float getProcessingTime () const
 処理時間の取得

virtual float getProcessingRate () const
 処理割合の取得

virtual void registerBackgroundThread (Thread *backgroundThread)
 バックグラウンドスレッドの登録

virtual int getBackgroundThreadCount ()
 バックグラウンドスレッド数の取得

virtual ThreadgetBackgroundThread (int index)
 バックグラウンドスレッド数の取得

virtual String toString () const
 文字列への変換


Static Public Attributes

const float interval60FPS = 16.6666666f
 60FPS

const float interval30FPS = 33.3333333f
 30FPS


Detailed Description

FPSコントローラ.

Definition at line 40 of file FPSController.h.


Constructor & Destructor Documentation

Lamp::FPSController::FPSController float  targetInterval = interval60FPS  ) 
 

コンストラクタ

Parameters:
targetInterval 目標時間間隔をミリ秒で指定

Definition at line 39 of file FPSController.cpp.

References setTargetInterval().


Member Function Documentation

Thread * Lamp::FPSController::getBackgroundThread int  index  )  [virtual]
 

バックグラウンドスレッド数の取得

Parameters:
index インデックス
Returns:
バックグラウンドスレッド数

Definition at line 101 of file FPSController.cpp.

int Lamp::FPSController::getBackgroundThreadCount  )  [virtual]
 

バックグラウンドスレッド数の取得

Returns:
バックグラウンドスレッド数

Definition at line 95 of file FPSController.cpp.

References Lamp::Deque< Thread * >::getCount().

virtual float Lamp::FPSController::getIntervalTime  )  const [inline, virtual]
 

インターバルの取得

Returns:
インターバルをミリ秒で取得

Definition at line 85 of file FPSController.h.

Referenced by getProcessingRate(), and toString().

virtual float Lamp::FPSController::getProcessingRate  )  const [inline, virtual]
 

処理割合の取得

Returns:
処理割合

Definition at line 105 of file FPSController.h.

References getIntervalTime(), and getProcessingTime().

virtual float Lamp::FPSController::getProcessingTime  )  const [inline, virtual]
 

処理時間の取得

Returns:
処理時間をミリ秒で取得

Definition at line 97 of file FPSController.h.

Referenced by getProcessingRate(), and toString().

virtual float Lamp::FPSController::getSleepTime  )  const [inline, virtual]
 

スリープ時間の取得

Returns:
スリープ時間をミリ秒で取得

Definition at line 91 of file FPSController.h.

Referenced by toString().

virtual float Lamp::FPSController::getTargetInterval  )  const [inline, virtual]
 

目標時間間隔の取得

Returns:
目標時間間隔をミリ秒で返す

Definition at line 73 of file FPSController.h.

Referenced by Lamp::BufferedInput::getTargetInterval().

void Lamp::FPSController::registerBackgroundThread Thread backgroundThread  )  [virtual]
 

バックグラウンドスレッドの登録

Parameters:
backgroundThread バックグラウンドスレッド

Definition at line 88 of file FPSController.cpp.

References Assert, Lamp::Thread::isFinished(), and Lamp::Deque< Thread * >::pushBack().

virtual void Lamp::FPSController::setTargetInterval float  targetInterval  )  [inline, virtual]
 

目標時間間隔の設定

Parameters:
targetInterval 目標時間間隔をミリ秒で指定

Definition at line 63 of file FPSController.h.

Referenced by FPSController(), and Lamp::BufferedInput::setTargetInterval().

float Lamp::FPSController::sleep  )  [virtual]
 

FPSを維持するためにカレントスレッドをsleepする.

Returns:
前回のsleepとの時間間隔

Definition at line 50 of file FPSController.cpp.

References Lamp::Deque< Thread * >::getCount(), Lamp::Thread::isFinished(), Lamp::Thread::suspend(), and u_int.

Referenced by Lamp::SimpleFramework::frameworkPresentation(), and Lamp::BufferedInput::run().

String Lamp::FPSController::toString  )  const [virtual]
 

文字列への変換

Returns:
文字列

Definition at line 107 of file FPSController.cpp.

References Lamp::String::format(), getIntervalTime(), getProcessingTime(), and getSleepTime().


The documentation for this class was generated from the following files:
Generated on Wed Mar 16 10:29:46 2005 for Lamp by doxygen 1.3.2