#include <dwc.h>
BOOL DWC_SetupGameServer(DWCTopologyType topology,
u8 maxEntry,
DWCMatchedSCCallback matchedCallback,
void *matchedParam,
DWCNewClientCallback newClientCallback,
void *newClientParam,
DWCConnectAttemptCallback attemptCallback,
u8 *connectionUserData,
void *attemptParam);| topology | 接続形態。DWCTopologyTypeの中から一つ指定します。 |
| maxEntry | 最大接続人数(自分を含む)。2〜32の値が設定できる。 |
| matchedCallback | 接続完了コールバック関数へのポインタ。1人接続するごとに呼ばれる。 |
| matchedParam | 接続完了コールバック用パラメータ |
| newClientCallback | 新規接続クライアント通知コールバック関数へのポインタ |
| newClientParam | 新規接続クライアント通知コールバック用パラメータ |
| attemptCallback | 接続受付判定コールバック関数へのポインタ。 |
| connectionUserData | 自分の接続受付判定用パラメータバッファへのポインタ。u8[DWC_CONNECTION_USERDATA_LEN]分のバッファであること。このバッファの内容は、ライブラリにコピーされるので、本関数呼出し後は開放されていても構わない。NULLを指定した場合、自分の接続受付判定用バッファの内容はすべて0に設定される。 |
| attemptParam | 接続受付判定コールバック用パラメータ |
| TRUE | 処理完了 |
| FALSE | 本関数を呼んで良い状態ではない |
自らをサーバホストとして動作させ、クライアントホストからの要求があれば、コネクションの接続・切断処理を行います。ここでのサーバホストとは、このサーバクライアントマッチメイクにおいて、※DSワイヤレス通信の親機のような働きをするホストのことです。
本関数は、サーバクライアントマッチメイクを開始するための関数であり、DWC_CloseAllConnectionsHard関数、もしくはDWC_ShutdownFriendsMatch関数が呼ばれるまでは、クライアントホストからの接続を受け付けます。そして、自分に接続を開始したクライアントホストを検知すれば、新規接続クライアント通知コールバックが呼ばれ、そのクライアントホストの接続処理が完了すれば、接続完了コールバックが呼ばれます。
クライアントホストはDWC_ConnectToGameServerAsync関数を用いて、サーバホストに接続します。
ネットワーク接続状況により、関数からしばらく処理が戻らずブロックすることがあります。
※DSワイヤレス通信・・・NintendoDSでのローカル無線通信を指します。APを経由せずに独自のプロトコルで直接DS同士が通信を行います。一台の親機とそれに繋がる複数の子機で構成されます。
5.1pr2より前の変更履歴はこちら