DWC_SetupGameServer

構文

#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より前の変更履歴はこちら