# MBCommPState

## 定義

  `#include <nitro/mb.h>`

      typedef enum
      {
          MB_COMM_PSTATE_NONE,
          MB_COMM_PSTATE_INIT_COMPLETE,
          MB_COMM_PSTATE_CONNECTED,
          MB_COMM_PSTATE_DISCONNECTED,
          MB_COMM_PSTATE_KICKED,
          MB_COMM_PSTATE_REQ_ACCEPTED,
          MB_COMM_PSTATE_SEND_PROCEED,
          MB_COMM_PSTATE_SEND_COMPLETE,
          MB_COMM_PSTATE_BOOT_REQUEST,
          MB_COMM_PSTATE_BOOT_STARTABLE,
          MB_COMM_PSTATE_REQUESTED,
          MB_COMM_PSTATE_MEMBER_FULL,
          MB_COMM_PSTATE_END,
          MB_COMM_PSTATE_ERROR,
          MB_COMM_PSTATE_WAIT_TO_SEND,

          MB_COMM_PSTATE_WM_EVENT = 0x80000000
      } MBCommPState;

## 説明

マルチブート親機状態を表す列挙定数を示します。
各値の意味は以下の通りです。

値 | 意味
MB_COMM_PSTATE_NONE | 親機のアイドル状態を示します。
MB_COMM_PSTATE_INIT_COMPLETE | `MB_StartParent()` の完了時のコールバックを示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg には `WM_SetParentParameter()`の完了コールバック引数である `WMCallback`型のポインタが渡されます。 特定の子機に対する状態のコールバックではないため、引数child_aidには0が渡されます。
MB_COMM_PSTATE_CONNECTED | 任意の子機から接続が開始された直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg には WM_STATECODE_CHILD_CONNECTED 状態における `WMStartParentCallback`型のポインタが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_DISCONNECTED | 任意の子機が切断された直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg には WM_STATECODE_DISCONNECTED 状態における `WMStartParentCallback`型のポインタが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_KICKED | 任意の子機への接続拒否応答が正しく完了した直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_REQ_ACCEPTED | 任意の子機への接続許可応答が正しく完了した直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_WAIT_TO_SEND | 任意の子機がダウンロード開始の待機状態に入ったことを示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_SEND_PROCEED | 任意の子機へのダウンロードが正常に進捗している状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 コールバックは、ダウンロード開始の時に一度だけ呼ばれます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_SEND_COMPLETE | 任意の子機へのダウンロードが正常に完了した直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_BOOT_REQUEST | 任意の子機へブート要求を送信している状態を示します。 この状態には、`MB_CommBootRequest()` または、`MB_CommBootRequestAll()` を呼んだときに遷移します。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_BOOT_STARTABLE | 任意の子機へのブート要求が正しく完了した直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_REQUESTED | 任意の子機からダウンロード要求を受信した直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg には 子機のユーザーデータが格納された`MBUserInfo`型のポインタが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_MEMBER_FULL | 任意の子機からのダウンロード開始要求が、人数制限のため強制的にキャンセルされた直後の状態を示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 引数child_aidには対象子機の番号が渡されます。
MB_COMM_PSTATE_END | `MB_End()` の完了時のコールバックを示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg にはNULLが渡されます。 特定の子機に対する状態のコールバックではないため、引数child_aidには0が渡されます。
MB_COMM_PSTATE_ERROR | MBライブラリの内部で発生した各種のエラーを通知するコールバックを示します。 `MB_CommSetParentStateCallback()` のコールバックでは、引数 arg には エラーの要因が格納された`MBErrorStatus`型のポインタが渡されます。
MB_COMM_PSTATE_WM_EVENT | ライブラリ内部で使用されます。

## 参照

`MB_CommSetParentStateCallback MB_CommGetParentState`

## 履歴

2004/10/05 列挙型追加
2004/09/30 列挙型追加
2004/09/27 記述修正
2004/09/10 MB_CommSetParentStateCallback()でのコールバック引数に関する記述を追加
2004/08/09 初版