CTR NEX API Reference
nn::nex::SingleStepJob クラスabstract

一つのステップを持つジョブを実行するためのクラスです。 [詳解]

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

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

公開メンバ関数

 SingleStepJob ()
 コンストラクタです。 [詳解]
 
virtual ~SingleStepJob ()
 デストラクタです。 [詳解]
 
RefCountedObjectAcquireRef ()
 参照カウントを 1 増加させます。
 
virtual void OnCancelled ()
 ジョブがキャンセルされた場合にコールバックされます。 [詳解]
 
virtual qBool OnStep (qResult *result)=0
 ジョブの進行状況をチェックする関数です。オーバーライドしてジョブが完了した場合に true を返してください。 [詳解]
 
void ReleaseRef ()
 参照カウントを 1 減少させます。0 になるときに自分自身を delete します。
 
qBool Start (CallContext *pContext, qBool deleteOnCompletion=false)
 ジョブを開始します。 [詳解]
 

静的公開変数類

static const qUnsignedInt32 DELAY_TIME_MSEC = 16
 SingleStepJob::OnStep() が実行される間隔(ミリ秒)です。
 

詳解

一つのステップを持つジョブを実行するためのクラスです。

構築子と解体子

nn::nex::SingleStepJob::SingleStepJob ( )

コンストラクタです。

virtual nn::nex::SingleStepJob::~SingleStepJob ( )
virtual

デストラクタです。

関数詳解

qBool nn::nex::SingleStepJob::Start ( CallContext pContext,
qBool  deleteOnCompletion = false 
)

ジョブを開始します。

Scheduler にジョブを登録し、処理を開始します。 登録されたジョブは、 DELAY_TIME_MSEC ミリ秒毎に SingleStepJob::OnStep() により実行状況がチェックされます。

引数
[in,out]pContextジョブの実行状況を管理するための情報です。
[in]deleteOnCompletionジョブが完了した時点で自身をdeleteするかどうか。


戻り値一覧:

true 非同期処理の開始に成功。

false 指定した pContext の状態が CallContext::CallInProgress となっており非同期処理を開始出来ない。 これは他の非同期処理で使用中であることを示します。 プログラミングエラーであるため、このケースはリリースビルド以外では内部で Assert により停止します。

virtual qBool nn::nex::SingleStepJob::OnStep ( qResult result)
pure virtual

ジョブの進行状況をチェックする関数です。オーバーライドしてジョブが完了した場合に true を返してください。

false 返すと SingleStepJob::DELAY_TIME_MSEC 後に再度本関数が呼び出されます。 処理が完了して返値に true を指定するときにジョブの処理結果を result に格納してください。

引数
[out]result処理結果
戻り値
処理が完了したら true, 処理中の場合は false
virtual void nn::nex::SingleStepJob::OnCancelled ( )
virtual

ジョブがキャンセルされた場合にコールバックされます。

キャンセルされたときに特別な処理が必要な場合はオーバーライドしてください。