# WBTCommandType

## 定義

  `#include <nitro/wbt.h>`
  `typedef enum {
  WBT_CMD_REQ_NONE = 0,
  WBT_CMD_REQ_WAIT,
  WBT_CMD_REQ_SYNC,
  WBT_CMD_RES_SYNC,
  WBT_CMD_REQ_GET_BLOCK,
  WBT_CMD_RES_GET_BLOCK,
  WBT_CMD_REQ_GET_BLOCKINFO,
  WBT_CMD_RES_GET_BLOCKINFO,
  WBT_CMD_REQ_GET_BLOCK_DONE,
  WBT_CMD_RES_GET_BLOCK_DONE,
  WBT_CMD_REQ_USER_DATA,
  WBT_CMD_RES_USER_DATA,
  WBT_CMD_SYSTEM_CALLBACK,
  WBT_CMD_PREPARE_SEND_DATA,
  WBT_CMD_REQ_ERROR,
  WBT_CMD_RES_ERROR,
  WBT_CMD_CANCEL
  } WBTCommandType;
  `

## 説明

WBT でコールバックに通知される各コマンドを識別する列挙定数を示します。
コールバック引数のWBTCommandに格納されている command メンバには
コールバック発生の直接の原因を示す以下の各値のいずれかが設定されます。

command の値 | 意味
WBT_CMD_REQ_SYNC | WBT_RequestSync( )が発生させたコールバックです。
WBT_CMD_REQ_GET_BLOCK | WBT_GetBlock( )が発生させたコールバックです。
WBT_CMD_REQ_GET_BLOCKINFO | WBT_GetBlockInfo( )が発生させたコールバックです。
WBT_CMD_REQ_USER_DATA | WBT_PutUserData( )が発生させたコールバックです。
WBT_CMD_SYSTEM_CALLBACK | コマンド完了とは別に任意のタイミングで発生したコールバックです。

また、コールバック引数のWBTCommandに格納されている event メンバには
コールバックの具体的な要因を示す以下の各値のいずれかが設定されます。

event の値 | 意味
以下の要因は各コマンドで指定したコールバック関数に通知されます。 |
WBT_CMD_RES_SYNC | WBT_RequestSync( )の完了を示します。 コールバック引数のsyncメンバが有効な情報を格納しています。
WBT_CMD_RES_GET_BLOCKINFO | WBT_GetBlockInfo( )の完了を示します。
WBT_CMD_RES_GET_BLOCK | WBT_GetBlock( )の完了を示します。 コールバック引数のgetメンバが有効な情報を格納しています。
WBT_CMD_RES_USER_DATA | WBT_PutUserData( )の完了を示します。
WBT_CMD_RES_ERROR | 発行したコマンドが何らかの要因で失敗したことを示します。
WBT_CMD_CANCEL | 現在発行中のコマンドがWBT_CancelCurrentCommand( )によってキャンセルされたことを示します。
以下の要因はWBT_InitParent( )またはWBT_InitChild( )で指定したコールバック関数に通知されます。 |
WBT_CMD_PREPARE_SEND_DATA | WBT_RegisterBlock( )をバッファ無指定で登録した場合のデータ準備要求を示します。 コールバック引数のprepare_send_dataメンバが有効な情報を格納しています。 また、このメンバに応答結果を格納して送信バッファを準備させます。
WBT_CMD_REQ_SYNC | 通信先からWBT_RequestSync( )による要求を受信したことを示します。 コールバック引数のsyncメンバが有効な情報を格納しています。
WBT_CMD_REQ_GET_BLOCKINFO | 通信先からWBT_GetBlockInfo( )による要求を受信したことを示します。
WBT_CMD_REQ_GET_BLOCK | 通信先からWBT_GetBlock( )による要求を受信したことを示します。
WBT_CMD_REQ_GET_BLOCK_DONE | 通信先からのWBT_GetBlock( )による要求が完了したことを示します。 コールバック引数のblockdoneメンバが有効な情報を格納しています。
WBT_CMD_REQ_USER_DATA | 通信先からWBT_PutUserData( )によるデータを受信したことを示します。 コールバック引数のuser_dataメンバが有効な情報を格納しています。
WBT_CMD_REQ_ERROR | 通信先からのリクエストが何らかの要因で失敗したことを示します。
WBT_CMD_REQ_NONE | いずれのコマンドでもないことを示す定義値です。
WBT_CMD_REQ_WAIT | ライブラリ内部で使用されます。

## 参照

`WBTCallback, WBTCommand`

## 履歴

2004/09/21 初版