nl:: Weave:: Profiles:: BDX_Development
この名前空間には、開発中に使用され、本番環境での使用に適さない Bulk Data Transfer(BDX)プロファイル用の Weave 内のすべてのインターフェースが含まれます。
まとめ
列挙型 |
|
---|---|
@80
|
列挙型 |
@81
|
列挙型 |
@82
|
列挙型 |
@83
|
列挙型 |
Typedef |
|
---|---|
BdxClient
|
typedef |
BdxServer
|
typedef |
ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode)
|
typedefvoid(*
このハンドラは、エラーコードを使用してユーザー アプリケーション定義のコントロール フローに直接返すことができない Weave エラーが発生した場合に呼び出されます。 |
GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
|
typedefvoid(*
Get a block of data to be transmitted. |
PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
|
typedefvoid(*
長さ aLength の aDataBlock が指すデータブロックを処理します。 |
ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg)
|
typedef 以前に送信された ReceiveInit が宛先で受け入れられたときに呼び出されるコールバック。 |
ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg)
|
typedefuint16_t(*
ReceiveInit メッセージを受信したときにコールバックします。 |
RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport)
|
typedefvoid(*
以前の init メッセージの 1 つが宛先によって拒否された場合に呼び出されます。 |
SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg)
|
typedef 以前に送信された SendInit が宛先によって受け入れられたときに呼び出されるコールバック。 |
SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg)
|
typedefuint16_t(*
SendInit メッセージを受信したときにコールバックが呼び出されました。 |
XferDoneHandler)(BDXTransfer *aXfer)
|
typedefvoid(*
転送が完了したケースを処理する。 |
XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError)
|
typedefvoid(*
BDX によって送受信された TransferError メッセージを処理します。 |
Functions |
|
---|---|
GetBDXAckFlag(ExchangeContext *anEc)
|
uint16_t
GetBDXAckFlag は、エクスチェンジのコンテキストに応じて(TCP のリクエスト確認なし)、WRMP のコンパイル時サポートに応じて、RequestAck フィールドに適したフラグを返します。
|
構造体 |
|
---|---|
nl:: |
|
nl:: |
この構造には、アクティブな BDX 転送を表すデータメンバーが含まれます。 |
Namespace |
|
---|---|
nl:: |
列挙型
80
@80
81
@81
82
@82
83
@83
Typedef
BDX クライアント
BdxNode BdxClient
DBX サーバー
BdxNode BdxServer
ErrorHandler
void(* ErrorHandler)(BDXTransfer *aXfer, WEAVE_ERROR anErrorCode)
このハンドラは、エラーコードを使用してユーザー アプリケーション定義のコントロール フローに直接返すことができない Weave エラーが発生した場合に呼び出されます。
つまり、署名が戻り値の型が void である別のハンドラ内で発生した場合(受信 Weave メッセージへの応答、プロトコルによってディスパッチされた場合など)、このハンドラは、転送の復元と続行の可否や Shutdown() の呼び出しが必要かどうかを判断するために呼び出されます。BDXTransfer の初期化前にエラーが発生する(エラーなど)可能性があります。この場合、そのエラーは Weave によって記録され、プロトコルによって割り当てられた必要な状態のクリーンアップがすべて処理されます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
GetBlockHandler
void(* GetBlockHandler)(BDXTransfer *aXfer, uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
Get a block of data to be transmitted.
呼び出し元はバッファリング領域(バッファとバッファの長さ、参照で渡される時間)を提供します。呼び出し先(ユーザー アプリ)は提供されたバッファを使用すべきですが、下位互換性の理由から、独自のバッファを返す必要があります。呼び出し先では、バイトの aLength
以下にする必要があります。返された aLength
には、バッファに読み込まれた実際のバイト数が含まれます。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
PutBlockHandler
void(* PutBlockHandler)(BDXTransfer *aXfer, uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
長さ aLength の aDataBlock が指すデータブロックを処理します。
ほとんどの場合、これにはファイルへの書き込みと、isLastBlock が true の場合に対象のファイルを閉じることが含まれます。
詳細 | |||||||||
---|---|---|---|---|---|---|---|---|---|
パラメータ |
|
ReceiveAcceptHandler
WEAVE_ERROR(* ReceiveAcceptHandler)(BDXTransfer *aXfer, ReceiveAccept *aReceiveAcceptMsg)
以前に送信された ReceiveInit が宛先で受け入れられたときに呼び出されるコールバック。
この機会に、ファイルを開いたり、転送を開始する際にリソースを割り当てたりする必要はありません。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
ReceiveInitHandler
uint16_t(* ReceiveInitHandler)(BDXTransfer *aXfer, ReceiveInit *aReceiveInitMsg)
ReceiveInit メッセージを受信したときにコールバックします。
その役割は、受信を受け入れるかどうかを決定し、受け入れる場合は、aXfer->mIsAccepted=true を設定して、プロトコルがイニシエーターに送信できるようにすることです。BDXTransfer オブジェクトでデフォルトの設定が開始されます。ここには、アプリケーション固有の状態(開いているファイル ハンドルなど)を aXfer->mAppState に関連付けるのに適した場所があります。この時点で、ブロック処理などのハンドラも BDXTransfer オブジェクトにアタッチする必要があります。kStatus_Success 以外のエラーコードが返された場合、転送は拒否されたものとみなされ、プロトコルによって拒否コードの送信がコードとともに処理されます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
RejectHandler
void(* RejectHandler)(BDXTransfer *aXfer, StatusReport *aReport)
以前の init メッセージの 1 つが宛先によって拒否された場合に呼び出されます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
SendAcceptHandler
WEAVE_ERROR(* SendAcceptHandler)(BDXTransfer *aXfer, SendAccept *aSendAcceptMsg)
以前に送信された SendInit が宛先によって受け入れられたときに呼び出されるコールバック。
この機会に、ファイルを開いたり、転送を開始する際にリソースを割り当てたりする必要はありません。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
SendInitHandler
uint16_t(* SendInitHandler)(BDXTransfer *aXfer, SendInit *aSendInitMsg)
SendInit メッセージを受信したときにコールバックが呼び出されました。
その役割は、SendInit を受け入れるかどうかを決定し、同意する場合は、aXfer->mIsAccepted=true を設定して、プロトコルによってイニシエーターに送信されるようにします。BDXTransfer オブジェクトでデフォルトの設定が開始されます。ここには、アプリケーション固有の状態(開いているファイル ハンドルなど)を aXfer->mAppState に関連付けるのに適した場所があります。この時点で、ブロック処理などのハンドラも BDXTransfer オブジェクトにアタッチする必要があります。WEAVE_NO_ERROR 以外のエラーコードが返された場合、転送は拒否されたものと見なされ、プロトコルによって拒否メッセージの送信がコードと一緒に処理されます。
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
XferDoneHandler
void(* XferDoneHandler)(BDXTransfer *aXfer)
転送が完了したケースを処理する。
詳細 | |||
---|---|---|---|
パラメータ |
|
XferErrorHandler
void(* XferErrorHandler)(BDXTransfer *aXfer, StatusReport *aXferError)
BDX によって送受信された TransferError メッセージを処理します。
注: BDX 転送は復元可能であると考えられるため(その時点で一時的に PacketBuffer から外れるなど)、アプリケーション プログラマーと定義するコールバックに Shutdown() を呼び出すオプションが用意されています。TODO: BDX ドキュメントの言語に間違いがないことを確認し、次のよう調整してください。&があります
詳細 | |||||
---|---|---|---|---|---|
パラメータ |
|
Functions
GetBDXAckFlag
uint16_t GetBDXAckFlag( ExchangeContext *anEc )
GetBDXAckFlag は、エクスチェンジのコンテキストに応じて(TCP のリクエスト確認なし)、WRMP のコンパイル時サポートに応じて、RequestAck フィールドに適したフラグを返します。
詳細 | |||
---|---|---|---|
パラメータ |
|
||
戻り値 |
0 または kSendFlag_RequestAck
|