#include <nitro/wm.h>typedef struct WMPortRecvCallback
{
u16 apiid;
u16 errcode;
u16 state;
u16 port;
WMMpRecvBuf* recvBuf;
u16* data;
u16 length;
u16 aid;
u8 macAddress[6];
u16 seqNo;
void* arg;
u16 myAid;
u16 connectedAidBitmap;
u8 ssid[24];
u16 reason;
u16 rssi;
u16 maxSendDataSize;
u16 maxRecvDataSize;
}WMPortRecvCallback;
| apiid | コールバック発生の元となったAPIのIDです。WMApiid列挙型と同義です。 ここではWM_APIID_PORT_RECVに固定となります。 |
| errcode | 非同期処理の結果です。WMErrCode列挙型と同義です。 |
| state | errcodeがWM_ERRCODE_SUCCESSの場合、コールバックの発生した要因種別が格納されます。発生しうる要因は以下の5つです。 WM_STATECODE_PORT_INIT、WM_STATECODE_PORT_RECV、WM_STATECODE_CONNECTED、WM_STATECODE_DISCONNECTED、WM_STATECODE_DISCONNECTED_FROM_MYSELF。 |
| port | データを受信したポートが格納されます。 |
| recvBuf | WMStartMPCallbackとの互換性のために用意されたメンバです。 |
| data | データを受信したバッファのアドレスが格納されます。 |
| length | 受信したデータの長さが格納されます。 |
| aid | 受信したデータの送信元のAIDが格納されます。 WM_STATECODE_CONNECTEDの通知でも相手の端末のAIDが入っていることに注意してください。 子機ならば0(親機のAID)で固定です。 |
| macAddress | stateがWM_STATECODE_CONNECTED、WM_STATECODE_DISCONNECTED、WM_STATECODE_DISCONNECTED_FROM_MYSELFの場合、 接続もしくは切断された子機のMACアドレスが格納されます。 |
| seqNo | シーケンス番号が格納されます。 |
| arg | WM_SetPortCallback( )で指定した引数が格納されます。 |
| myAid | 自分のAIDが格納されます。 |
| connectedAidBitmap | 接続中のAIDのビットマップが格納されます。 |
| ssid | 子機がWM_StartConnect( ) で指定したssidが格納されます。 親機における、WM_STATECODE_CONNECTEDの通知の際にだけ有効です。 |
| reason | stateがWM_STATECODE_DISCONNECTED、WM_STATECODE_DISCONNECTED_FROM_MYSELFの場合、切断された理由を示すコードが格納されます。 ライブラリ内部で使用されるデバッグ目的のメンバです。 |
| rssi | データを受信した際の受信感度が格納されます。 |
| maxSendDataSize | 現在の送信可能なデータサイズです。 親機として動作している場合には親機送信容量が、子機として動作している場合には子機送信容量が格納されます。 |
| maxRecvDataSize | 現在の受信可能なデータサイズです。 親機として動作している場合には子機送信容量が、子機として動作している場合には親機送信容量が格納されます。 |
WM_SetPortCallback( ) で設定したコールバック関数に渡される構造体です。
2009/01/27 rsv メンバの削除、rssi, maxSendDataSize, maxSendDataSize メンバの追加
2006/02/17 stateに返るコードに関する記述を修正
2005/11/14 誤って削除していた rsv メンバに関する記述を復元
2005/10/31 connectedAidBitmap, reason メンバの追加
2005/02/01 myAid と ssid メンバの説明を追加
2004/10/05 MACアドレスをu8型配列に統一
2004/09/13 WM_STATECODE_CHILD_CONNECTED を WM_STATECODE_CONNECTED に変更
2004/08/11 初版