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

データの分割アップロードに使用するイベントリスナーの抽象クラスです。 [詳解]

#include <RendezVous/Services/Jugem/DataStore/src/Client/DataStoreEventListener.h>

公開メンバ関数

 DataStorePostObjectEventListener ()
 コンストラクタです。
 
virtual ~DataStorePostObjectEventListener ()
 デストラクタです。
 
virtual size_t PostChunkedBuffer (void *buffer, size_t bufferSize, qBool *completed)=0
 アップロードするデータを分割して登録します。 [詳解]
 

詳解

データの分割アップロードに使用するイベントリスナーの抽象クラスです。

本クラスは RootObject から継承されません。本クラスを継承したクラスで必要に応じて RootObject を継承してください。

関数詳解

virtual size_t nn::nex::DataStorePostObjectEventListener::PostChunkedBuffer ( void *  buffer,
size_t  bufferSize,
qBool completed 
)
pure virtual

アップロードするデータを分割して登録します。

データのアップロードを開始すると、非同期処理が完了するまで本関数が複数回呼ばれます。 アップロードするデータを順次 buffer に書き込みます。 completed を true にしたときに書き込んだ合計サイズがアップロードする際に指定したサイズと一致している必要があります。 一致していない場合はキャンセルされたときと同じ処理が行われます。 また、completed を true にしていない場合でも、アップロードする際に指定したサイズより書き込んだサイズが大きくなったときも同様にキャンセルされます。 渡されるバッファの最大サイズは DataStoreClient::SetRelayBufferSize() で設定できます。

引数
[out]bufferアップロードするデータをここに書き込みます。
[in]bufferSizebuffer に書き込める最大サイズ。1以上かつ DataStoreClient::SetRelayBufferSize() で設定した値以下のサイズが渡されます。
[out]completedアップロードが完了したら true を代入、完了していなければfalseを代入もしくは未設定にしてください。true にすると、以後本関数は呼び出されません。
戻り値
buffer に書き込んだサイズ。0以上 bufferSize 以下の値になるようにしてください。0を返し続けることによりアップロード処理を一時中断できます。