CTR NEX API Reference
nn::nex::Pacer クラス

設定された最大周波数の間隔より早く処理が進まないように、必要に応じてビジーウェイトをするクラスです。 [詳解]

#include <OnlineCore/src/Core/Pacer.h>

+ nn::nex::Pacer の継承関係図

公開メンバ関数

 Pacer (qReal dFrequency=0)
 コンストラクタです。 [詳解]
 
virtual ~Pacer ()
 デストラクタです。 [詳解]
 
qReal GetFrequency () const
 最大周波数を取得します。 [詳解]
 
void GetStats (TimeInterval *ptiTotal, TimeInterval *ptiTotalProcessing, TimeInterval *ptiMinProcessing, TimeInterval *ptiMaxProcessing, qUnsignedInt32 *puiLoops) const
 統計情報を取得します。 [詳解]
 
void Interrupt ()
 Pace()実行時のビジーウェイトをキャンセルします。 [詳解]
 
virtual void Pace ()
 最大周波数より早くならないペースになるように、必要に応じてビジーウェイトします。 [詳解]
 
void ResetStats ()
 統計情報をリセットします。 [詳解]
 
void SetFrequency (qReal dFrequency)
 最大周波数を設定します。 [詳解]
 

詳解

設定された最大周波数の間隔より早く処理が進まないように、必要に応じてビジーウェイトをするクラスです。

設定された周波数より遅い場合は、ウェイトしません。

構築子と解体子

nn::nex::Pacer::Pacer ( qReal  dFrequency = 0)

コンストラクタです。

引数
dFrequency最大周波数[Hz]を設定します。デフォルトは0で、ウェイトなしです。
virtual nn::nex::Pacer::~Pacer ( )
virtual

デストラクタです。

関数詳解

void nn::nex::Pacer::SetFrequency ( qReal  dFrequency)

最大周波数を設定します。

引数
[in]dFrequency最大周波数[Hz]を設定します。0は、ビジーウェイトなしです。
参照
GetFrequency()
qReal nn::nex::Pacer::GetFrequency ( ) const

最大周波数を取得します。

戻り値
最大周波数[Hz]を取得します。
参照
SetFrequency()
void nn::nex::Pacer::Interrupt ( )

Pace()実行時のビジーウェイトをキャンセルします。

virtual void nn::nex::Pacer::Pace ( )
virtual

最大周波数より早くならないペースになるように、必要に応じてビジーウェイトします。

Pacerクラスのメインメソッドです。

void nn::nex::Pacer::GetStats ( TimeInterval ptiTotal,
TimeInterval ptiTotalProcessing,
TimeInterval ptiMinProcessing,
TimeInterval ptiMaxProcessing,
qUnsignedInt32 puiLoops 
) const

統計情報を取得します。

引数
[out]ptiTotalResetStats()もしくは、生成からの経過時間を返します。
[out]ptiTotalProcessingPace()とPace()の間の他の処理合計時間を返します。
[out]ptiMinProcessing二つのPace()間の他の処理時間の最小値を返します。
[out]ptiMaxProcessing二つのPace()間の他の処理時間の最大値を返します。
[out]puiLoopsResetStats()もしくは、生成からのPace()が呼ばれた回数を返します。
void nn::nex::Pacer::ResetStats ( )

統計情報をリセットします。