# WMStartScanCallback

## 定義

  `#include <nitro/wm.h>`

      typedef struct WMStartScanCallback
      {
          u16         apiid;
          u16         errcode;
          u16         wlCmdID;
          u16         wlResult;
          u16         state;
          u8          macAddress[6];
          u16         channel;
          u16         linkLevel;
          u16         ssidLength;
          u16         ssid[16];
          u16         gameInfoLength;
          WMGameInfo  gameInfo;

      } WMStartScanCallback;

## 要素

apiid | コールバック発生の元となったAPIのIDです。WMApiid列挙型と同義です。 ここではWM_APIID_START_SCANに固定となります。
errcode | 非同期処理の結果です。WMErrCode列挙型と同義です。
wlCmdID | errcodeがWM_ERRCODE_FAILEDの場合、無線ファームウェアでエラーとなったコマンドのIDが格納されます。
wlResult | errcodeがWM_ERRCODE_FAILEDの場合、無線ファームウェアでエラーとなった要因コードが格納されます。
state | errcodeがWM_ERRCODE_SUCCESSの場合、コールバックの発生した要因種別が格納されます。発生しうる要因は以下の2つです。 WM_STATECODE_PARENT_NOT_FOUND、WM_STATECODE_PARENT_FOUND。
macAddress | stateがWM_STATECODE_PARENT_FOUNDの場合に、発見した親機のMACアドレスが格納されます。
channel | stateがWM_STATECODE_PARENT_FOUNDの場合に、親機を発見したチャンネルが格納されます。
linkLevel | stateがWM_STATECODE_PARENT_FOUNDの場合に、親機を発見した時のリンク強度が格納されます。
ssidLength | stateがWM_STATECODE_PARENT_FOUNDの場合に、発見した親機の認証ID長がバイト単位で格納されます。DSワイヤレスプレイ用の親機や、ステルスモードのアクセスポイントなどでは長さが0である場合があります。
ssid | stateがWM_STATECODE_PARENT_FOUNDの場合に、発見した親機の認証IDが格納されます。
gameInfoLength | stateがWM_STATECODE_PARENT_FOUNDの場合に、発見した親機のゲーム固有情報長がバイト単位で格納されます。
gameInfo | stateがWM_STATECODE_PARENT_FOUNDの場合に、発見した親機のゲーム固有情報が格納されます。

## 説明

WM_StartScan( )に対するコールバック関数に渡される構造体です。

## 履歴

2006/03/10 ssidLength が DS 親機などでは 0 になることを追記
2005/10/31 macAddress メンバの要素説明の追加
2004/10/05 MACアドレスをu8型配列に統一
2004/08/30 親機発見時のリンク強度メンバを追加
2004/08/10 コールバック発生要因を修正
2004/08/02 構造体名の統一
2004/07/29 初版