CTR-Pia
5.4.3
Game Communication Engine
|
マッチメイク処理と P2P 通信用セッションの構築/参加処理をまとめるクラスです。 [詳細]
構成 | |
struct | DebugSetting |
(デバッグ用) session::Session::SetDebugSetting に渡すデバッグ機能設定用構造体です。 [詳細] | |
struct | Setting |
session::Session::CreateInstance() に各種パラメータを渡すための構造体です。 [詳細] | |
struct | StartupSetting |
session::Session::Startup に渡す設定用構造体です。 [詳細] | |
class | StationIdConstIterator |
セッションに参加している StationId を参照するためのイテレータです( const 版)。 [詳細] | |
class | StationIdIterator |
セッション内で有効な StationId を参照するためのイテレータです(非 const 版)。 [詳細] | |
Public メソッド | |
初期化終了処理 | |
Result | Startup (const StartupSetting &startupSetting) |
スタートアップ処理を実行します。 | |
void | Cleanup () |
クリーンアップ処理を実行します。 | |
セッションの操作 | |
bool | IsAsyncProcessInProgress () const |
セッション API の非同期処理が行われているかを取得します。 | |
Result | JoinRandomSessionAsync (const JoinRandomSessionSetting *pJoinRandomSessionSetting) |
ランダムマッチメイクを行いセッションの構築/参加を行います。 | |
bool | IsJoinRandomSessionCompleted () const |
JoinRandomSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetJoinRandomSessionResult () const |
JoinRandomSessionAsync の非同期処理の結果を取得します。 | |
Result | GetJoinRandomSessionScore (uint32_t *pScore) const |
JoinRandomSessionAsync の非同期処理でセッション参加時のスコアを取得します。 | |
Result | CancelJoinRandomSessionAsync () |
JoinRandomSessionAsync の非同期処理をキャンセルします。 | |
Result | BrowseSessionAsync (const SessionSearchCriteria *pSearchCriteria) |
セッションの検索を行います。 | |
bool | IsBrowseSessionCompleted () const |
BrowseSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetBrowseSessionResult () const |
BrowseSessionAsync の非同期処理の結果を取得します。 | |
ISessionInfoList * | GetBrowsedSessionInfoList () |
BrowseSessionAsync の非同期処理で検索できたセッションのリストを取得します。 | |
Result | CreateSessionAsync (const CreateSessionSetting *pCreateSessionSetting) |
セッションの構築を行います。 | |
bool | IsCreateSessionCompleted () const |
CreateSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetCreateSessionResult () const |
CreateSessionAsync の非同期処理の結果を取得します。 | |
Result | JoinSessionAsync (const JoinSessionSetting *pJoinSessionSetting) |
セッションへの参加を行います。 | |
bool | IsJoinSessionCompleted () const |
JoinSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetJoinSessionResult () const |
JoinSessionAsync の非同期処理の結果を取得します。 | |
Result | CancelJoinSessionAsync () |
JoinSessionAsync の非同期処理をキャンセルします。 | |
Result | LeaveSessionAsync () |
セッションからの離脱を行います。 | |
bool | IsLeaveSessionCompleted () const |
LeaveSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetLeaveSessionResult () const |
LeaveSessionAsync の非同期処理の結果を取得します。 | |
Result | OpenSessionAsync (const UpdateSessionSetting *pUpdateSessionSetting=NULL) |
セッションの参加受付を開始します。 | |
bool | IsOpenSessionCompleted () const |
OpenSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetOpenSessionResult () const |
OpenSessionAsync の非同期処理の結果を取得します。 | |
Result | CloseSessionAsync () |
セッションの参加締切を行います。 | |
bool | IsCloseSessionCompleted () const |
CloseSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetCloseSessionResult () const |
CloseSessionAsync の非同期処理の結果を取得します。 | |
Result | GenerateSessionSystemPasswordAsync () |
サーバー側でシステムパスワードを生成し、セッションにそのパスワードを設定します。 | |
bool | IsGenerateSessionSystemPasswordCompleted () const |
GenerateSessionSystemPasswordAsync の非同期処理の完了をチェックします。 | |
Result | GetGenerateSessionSystemPasswordResult () const |
GenerateSessionSystemPasswordAsync の非同期処理の結果を取得します。 | |
const common::String & | GetSessionSystemPassword () |
GenerateSessionSystemPasswordAsync でセッションに設定されたシステムパスワードを取得します。 | |
Result | ClearSessionSystemPasswordAsync () |
セッションに設定されたシステムパスワードを解除します。 | |
bool | IsClearSystemPasswordCompleted () const |
ClearSessionSystemPasswordAsync の非同期処理の完了をチェックします。 | |
Result | GetClearSystemPasswordResult () const |
ClearSessionSystemPasswordAsync の非同期処理の結果を取得します。 | |
Result | UpdateSessionSettingAsync (const UpdateSessionSetting *pUpdateSessionSetting) |
指定されたセッションの設定を更新します。 | |
bool | IsUpdateSessionSettingCompleted () const |
UpdateSessionSettingAsync の非同期処理の完了をチェックします。 | |
Result | GetUpdateSessionSettingResult () const |
UpdateSessionSettingAsync の非同期処理の結果を取得します。 | |
Result | UpdateSelectionPriority (uint8_t priority) const |
同じ条件のセッションが見つかった際のマッチメイクの優先度を更新します。 | |
bool | IsUpdatableSelectionPriority (uint8_t priority) const |
更新する予定の値で UpdateSelectionPriority が使用可能かを返します。 | |
コミュニティの操作 | |
uint64_t | ConvertCommunityIdToCommunityCode (uint32_t communityId) |
コミュニティIDをコミュニティコードに変換します。 | |
uint32_t | ConvertCommunityCodeToCommunityId (uint64_t communityCode) |
コミュニティコードをコミュニティIDに変換します。 | |
Result | CreateCommunityAsync (const CreateCommunitySetting *pCreateCommunitySetting) |
コミュニティの構築を行います。 | |
bool | IsCreateCommunityCompleted () const |
CreateCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetCreateCommunityResult () const |
CreateCommunityAsync の非同期処理の結果を取得します。 | |
Result | JoinCommunityAsync (const JoinCommunitySetting *pJoinCommunitySetting) |
コミュニティへの参加を行います。 | |
bool | IsJoinCommunityCompleted () const |
JoinCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetJoinCommunityResult () const |
JoinCommunityAsync の非同期処理の結果を取得します。 | |
Result | DestroyCommunityAsync (uint32_t communityId) |
コミュニティの破棄を行います。 | |
bool | IsDestroyCommunityCompleted () const |
DestroyCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetDestroyCommunityResult () const |
DestroyCommunityAsync の非同期処理の結果を取得します。 | |
Result | LeaveCommunityAsync (uint32_t communityId) |
コミュニティからの離脱を行います。 | |
bool | IsLeaveCommunityCompleted () const |
LeaveCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetLeaveCommunityResult () const |
LeaveCommunityAsync の非同期処理の結果を取得します。 | |
Result | BrowseCommunityAsync (const CommunitySearchCriteria *pSearchCriteria) |
コミュニティの検索を行います。 | |
bool | IsBrowseCommunityCompleted () const |
BrowseCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetBrowseCommunityResult () const |
BrowseCommunityAsync の非同期処理の結果を取得します。 | |
ICommunityInfoList * | GetBrowsedCommunityInfoList () |
BrowseCommunityAsync の非同期処理で検索できたコミュニティのリストを取得します。 | |
Result | UpdateCommunityAsync (const UpdateCommunitySetting *pUpdateCommunitySetting) |
指定されたコミュニティの設定を更新します。 | |
bool | IsUpdateCommunityCompleted () const |
UpdateCommunityAsync の非同期処理の完了をチェックします。 | |
Result | GetUpdateCommunityResult () const |
UpdateCommunityAsync の非同期処理の結果を取得します。 | |
セッション情報の解析 | |
bool | IsHost () const |
自分自身がホストであるかどうかを取得します。 | |
bool | IsValidStationId (StationId id) const |
任意の StationId がセッション内で現在有効かどうかを確認します。 | |
StationId | GetLocalStationId () const |
セッション内での自身を示す StationId を取得します。 | |
StationId | GetHostStationId () const |
自身が参加しているセッションのホストを示す StationId を取得します。 | |
Result | GetLocalStationConnectionInfo (transport::StationConnectionInfo *pInfoOut) |
自分自身を示す StationConnectionInfo を取得します。 | |
Result | GetHostStationConnectionInfo (transport::StationConnectionInfo *pInfoOut) |
自身が参加しているセッションのホストを示す StationConnectionInfo を取得します。 | |
uint16_t | GetStationNum () const |
現在参加しているセッションで接続している有効なステーション数を取得します。 | |
uint16_t | GetPlayerNum () const |
現在参加しているセッションで接続しているプレイヤー数を取得します。 | |
uint16_t | GetMatchmakeSessionParticipantNum () const |
現在参加しているセッションで接続しているマッチメイクセッション参加者数を取得します。 | |
uint16_t | GetMatchmakeSessionStationNum () const |
マッチメイクセッションに参加しているステーション数を取得します。 | |
uint16_t | GetValidStationIdNum () const |
セッション内の有効な StationId の数を取得します。 | |
Result | CheckConnectionError () const |
セッションが通信可能な状態か否かを確認します。 | |
Status | GetStatus () const |
セッションの状態を示す Status を取得します。 | |
bool | IsBitRateCheckCompleted () const |
ビットレート判定機能でのビットレート値が取得できるかどうかを取得します。 | |
Result | GetUplinkBitRate (int32_t *pBps) |
ビットレート判定機能によって計測された、アップリンク方向の回線のビットレートを取得します。 | |
bool | IsBitRateCheckEnabled () const |
ビットレート判定機能が有効かどうかを取得します。 | |
uint32_t | GetSessionId () const |
セッション ID を取得します。 | |
uint32_t | GetSessionId (StationId id) const |
指定したステーション ID のステーションが参加しているセッション ID を取得します。 | |
StationIdIterator | Begin () |
セッション内で有効な StationId のイテレータを返します(非 const 版)。 | |
StationIdIterator | End () |
セッション内で有効な StationId のイテレータを返します(非 const 版)。 | |
StationIdConstIterator | Begin () const |
セッション内で有効な StationId のイテレータを返します(非 const 版)。 | |
StationIdConstIterator | End () const |
セッション内で有効な StationId のイテレータを返します(非 const 版)。 | |
SessionOpenStatus | GetSessionOpenStatus () const |
セッションの参加募集状態を取得します。 | |
const ISessionInfo * | GetSessionInfo () const |
参加中のセッション情報を取得します。 | |
Result | RequestSessionInfoAsync () |
参加中のセッション情報の取得要求を行います。 | |
bool | IsRequestSessionInfoCompleted () const |
RequestSessionInfoAsync の非同期処理の完了をチェックします。 | |
Result | GetRequestSessionInfoResult () const |
RequestSessionInfoAsync の非同期処理の結果を取得します。 | |
ジョイントセッション機能 | |
Result | JoinRandomJointSessionAsync (const JoinRandomSessionSetting *pJoinRandomSessionSetting) |
ランダムマッチメイクでジョイントセッションに参加します。 | |
bool | IsJoinRandomJointSessionCompleted () const |
JoinRandomJointSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetJoinRandomJointSessionResult () const |
JoinRandomJointSessionAsync の非同期処理の結果を取得します。 | |
Result | GetJoinRandomJointSessionScore (uint32_t *pScore) const |
JoinRandomJointSessionAsync の非同期処理でセッション参加時のスコアを取得します。 | |
Result | DestroyJointSessionAsync () |
ジョイントセッションの解散を行います。 | |
bool | IsDestroyJointSessionCompleted () const |
DestroyJointSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetDestroyJointSessionResult () const |
DestroyJointSessionAsync の非同期処理の結果を取得します。 | |
Result | OpenJointSessionAsync (const UpdateSessionSetting *pUpdateSessionSetting=NULL) |
ジョイントセッションの参加受付を開始します。 | |
bool | IsOpenJointSessionCompleted () const |
OpenJointSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetOpenJointSessionResult () const |
OpenJointSessionAsync の非同期処理の結果を取得します。 | |
Result | CloseJointSessionAsync () |
ジョイントセッションの参加締切を行います。 | |
bool | IsCloseJointSessionCompleted () const |
CloseJointSessionAsync の非同期処理の完了をチェックします。 | |
Result | GetCloseJointSessionResult () const |
CloseJointSessionAsync の非同期処理の結果を取得します。 | |
Result | UpdateJointSessionSettingAsync (const UpdateSessionSetting *pUpdateSessionSetting) |
ジョイントセッションの設定を更新します。 | |
bool | IsUpdateJointSessionSettingCompleted () const |
UpdateJointSessionSettingAsync の非同期処理の完了をチェックします。 | |
Result | GetUpdateJointSessionSettingResult () const |
UpdateJointSessionSettingAsync の非同期処理の結果を取得します。 | |
uint32_t | GetJointSessionId () const |
ジョイントセッションのセッション ID を取得します。 | |
bool | IsJointSessionHost () const |
自分自身がジョイントセッションのホストであるかどうかを取得します。 | |
StationId | GetJointSessionHostStationId () const |
ジョイントセッションのホストを示す StationId を取得します。 | |
Result | GetJointSessionHostStationConnectionInfo (transport::StationConnectionInfo *pInfoOut) |
自身が参加しているジョイントセッションのホストを示す StationConnectionInfo を取得します。 | |
SessionOpenStatus | GetJointSessionOpenStatus () const |
ジョイントセッションの参加募集状態を取得します。 | |
const ISessionInfo * | GetJointSessionInfo () const |
参加中のジョイントセッションのセッション情報を取得します。 | |
Result | RequestJointSessionInfoAsync () |
参加中のジョイントセッションのセッション情報の取得要求を行います。 | |
bool | IsRequestJointSessionInfoCompleted () const |
RequestJointSessionInfoAsync の非同期処理の完了をチェックします。 | |
Result | GetRequestJointSessionInfoResult () const |
RequestJointSessionInfoAsync の非同期処理の結果を取得します。 | |
コールバック関数の登録/登録解除 | |
Result | RegisterSessionEventCallback (SessionEventCallback callback, void *pApplicationParam=NULL) |
セッションの状態が変化した場合に呼び出されるコールバック関数を登録します | |
void | UnregisterSessionEventCallback () |
登録されているセッション状態変化コールバック関数を登録解除します。 | |
void | RegisterJoiningApprovalCallback (JoiningApprovalCallback callback) |
セッションホストで参加要求が来た際に呼び出される承認/拒否判定コールバック関数を登録します | |
void | UnregisterJoiningApprovalCallback () |
登録されている参加要求が来た際に呼び出される承認/拒否判定コールバック関数の登録を解除します。 | |
同期クロック | |
int64_t | GetTime (void) const |
セッション作成時刻からの経過時間(同期クロック)をミリ秒で返します。 | |
void | SetSyncClockPulseInterval (int32_t interval) |
同期クロックの同期パルス送信間隔を指定します。 | |
int32_t | GetSyncClockPulseInterval (void) const |
同期クロックの同期パルス送信間隔を取得します。 | |
リレー通信機能 | |
Result | SetMaxNumOfRelayRoutesAssignedToStation (uint16_t num) |
リレー接続有効時に、ステーション1台に割り当てられる転送依頼数の最大制限値を設定します。 | |
Result | SetMaxRtt (uint16_t rtt) |
リレー接続有効時に、1つのリレー接続経路の合計 RTT の最大制限値を設定します。 | |
Result | GetConnectionRoute (StationId targetId, StationId *pRelayId) |
(デバッグ用)リレー接続有効時に、任意の StationIndex と自分自身との接続経路情報を取得します。 | |
Result | RelayEmulation (StationIndex index1, StationIndex index2) |
(デバッグ用)リレー接続有効時に、任意の StationIndex 間の接続経路エミュレーション設定を指定します。 | |
void | ResetRelayEmulation () |
(デバッグ用)リレー接続有効時に、接続経路エミュレーション設定を初期化します。 | |
その他 | |
bool | IsHostMigrationEnabled () const |
ホストマイグレーションが有効になっているかを取得します。 | |
Result | KickoutStation (StationId id) |
セッションから任意のステーションを追放します。(ホスト専用) | |
DisconnectReason | GetSessionDisconnectReason () const |
メッシュが通信不可能となった理由を取得します。 | |
virtual void | Trace (uint64_t flag) const |
デバッグに有用な情報をプリントします。 | |
void | SetMatchmakeAnalysisToken (const transport::Station::IdentificationToken *pToken) |
マッチメイク分析機能のセッション参加承認コールバックの不整合検知判定で使用する transport::Station::IdentificationToken を設定します。 | |
Static Public メソッド | |
シングルトンインスタンスの操作 | |
static Result | CreateInstance (const Setting &setting) |
Session クラスのインスタンスを作成します(シングルトンパターン)。 | |
static void | DestroyInstance () |
Session クラスのインスタンスを破棄します(シングルトンパターン)。 | |
static Session * | GetInstance () |
Session クラスのインスタンスを得ます(シングルトンパターン)。 | |
static Result | SetDebugSetting (const DebugSetting &debugSetting) |
(デバッグ用) Session のデバッグ用機能について設定します。 | |
マッチメイク処理と P2P 通信用セッションの構築/参加処理をまとめるクラスです。
このクラスはシングルトンパターンです。単一のインスタンスしか生成できません。
Session 内部の処理の一部は common::Scheduler にジョブとして登録されますので、 common::Scheduler::Dispatch を定期的に呼び出す必要があります。
typedef bool(* nn::pia::session::Session::JoiningApprovalCallback)(const transport::Station::IdentificationToken *pRequesterToken) |
セッションホストとして参加要求を受け取った際に呼び出される承認/拒否判定コールバックの関数型です。
自分がセッションホストで、クライアントから参加要求を受け取った場合に呼び出されるコールバックです。 返り値により参加要求を承認するか、拒否するか決定できます。
[in] | pRequesterToken | 参加要求の送信元ステーションの識別トークンを示すポインタです。 |
typedef void(* nn::pia::session::Session::SessionEventCallback)(EventType eventType, StationId id, void *pApplicationParam) |
セッションの状態が変化した場合に呼び出されるコールバックの関数型です。
【引数仕様】
Sesssion が通信不可能な状態の場合に、通信不可能になった理由を表す列挙型です。
GetSessionDisconnectReason で取得可能です。
DisconnectReason_UnknownReason |
通信不可能になった理由が不明です。通信中に(破棄、離脱などを行わずに) Session::Cleanup を行った場合などにこの値となります。 |
DisconnectReason_NotYetCommunicated |
まだ通信したことがない場合です。 Session::Startup 後に一度もセッション構築、参加をしていない場合はこの値となります。 |
DisconnectReason_OperationOfOwn |
自分自身の操作により通信不可能になった場合です。 Session::LeaveSessionAsync などを呼び出してセッション離脱した場合はこの値となります。 |
DisconnectReason_OperationOfOther |
セッション内の自分以外のステーションの操作により通信不可能になった場合です。自身がクライアントでホストがセッション破棄した場合などはこの値となります。 |
DisconnectReason_KickoutByUser |
Session::KickoutStation 呼出によりセッションから追放された場合です。 |
DisconnectReason_KickoutBySystem |
ライブラリ内部処理によってセッションから追放された場合です。リレー通信機能有効時のリレー依頼数制限などのライブラリ内部処理によってセッションから追放された場合はこの値となります。 |
DisconnectReason_InconsistentInfo |
セッション情報が不整合な状態になったので通信不可能になった場合です。ステーション数不一致などが原因の場合はこの値となります。 |
DisconnectReason_MigrationFail |
ホストマイグレーション処理に失敗したことにより通信不可能になった場合です。 |
DisconnectReason_ExternalFactor |
セッション以外の要因で通信不可能になった場合です。通信障害などが原因の場合はこの値となります。 |
DisconnectReason_MigrationFatalError |
ホストマイグレーション関連で致命的なエラーが発生した場合です。セッションが分裂状態になったことをライブラリ内部処理によって検知した場合などに発生します。 |
セッション状態変化通知コールバックで引数として渡される列挙型です。
セッションに発生した状態変化の内容を表現します。
セッションの開閉状態を表す列挙型です。
Session::GetSessionOpenStatus, Session::GetJointSessionOpenStatus で取得可能です。
セッションの状態を表す列挙型です。
Session::GetStatus で取得可能です。
Status_NotConnected |
通信していません。 |
Status_ConnectedSession |
セッションへ参加済みです。 |
Status_MigratingSession |
ジョイントセッション機能によるセッション移行処理中です。(送受信不可期間有り) |
Status_ConnectedJointSession |
ジョイントセッションへ参加済みです。 |
Status_DisconnectedSession |
セッションから切断されました。LeaveSessionAsync を 呼んだ後 Cleanup を呼び出す必要があります。 |
Status_DisconnectedNetwork |
ネットワークから切断されました。セッションに再度参加するためには、一度ログアウトしてから再度ログインする必要があります。 |
Status_DisconnectedNetworkByDuplicateLogin |
他の端末からの同一アカウントでのログインによりゲームサーバーから切断されました。 |
|
inline |
セッション内で有効な StationId のイテレータを返します(非 const 版)。
|
inline |
セッション内で有効な StationId のイテレータを返します(非 const 版)。
Result nn::pia::session::Session::BrowseCommunityAsync | ( | const CommunitySearchCriteria * | pSearchCriteria | ) |
コミュニティの検索を行います。
コミュニティ検索を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsBrowseCommunityCompleted でチェックし、結果は GetBrowseCommunityResult で確認できます。 検索処理が成功した場合、検索できたコミュニティのリストが更新され、GetBrowsedCommunityInfoList で取得できます。
[in] | pSearchCriteria | コミュニティ検索時の条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::BrowseSessionAsync | ( | const SessionSearchCriteria * | pSearchCriteria | ) |
セッションの検索を行います。
セッション検索を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsBrowseSessionCompleted でチェックし、結果は GetBrowseSessionResult で確認できます。 検索処理が成功した場合、検索できたセッションのリストが更新され、GetBrowsedSessionInfoList で取得できます。
[in] | pSearchCriteria | セッション検索時の条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::CancelJoinRandomSessionAsync | ( | ) |
JoinRandomSessionAsync の非同期処理をキャンセルします。
JoinRandomSessionAsync で開始された非同期処理は、本関数でキャンセルできます。 キャンセル処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 本関数を呼び出した後、ライブラリは速やかに非同期処理のキャンセルを行いますが、 キャンセルの完了は IsJoinRandomSessionCompleted() でチェックします。
Result nn::pia::session::Session::CancelJoinSessionAsync | ( | ) |
JoinSessionAsync の非同期処理をキャンセルします。
JoinSessionAsync で開始された非同期処理は、本関数でキャンセルできます。 キャンセル処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 本関数を呼び出した後、ライブラリは速やかに非同期処理のキャンセルを行いますが、 キャンセルの完了は IsJoinSessionCompleted() でチェックします。
Result nn::pia::session::Session::CheckConnectionError | ( | ) | const |
セッションが通信可能な状態か否かを確認します。
セッションや接続状況に異常が発生した場合、この関数で取得できる Result が変化します。
セッション参加中に定期的に呼び出して状態を確認する必要があります。 また、Startup() 呼び出し後から JoinRandomSessionAsync(), CreateSessionAsync(), JoinSessionAsync() などによりセッションに参加するまでの間、 定期的に呼び出してネットワークの状態を確認することが可能です。 非同期処理中は、非同期処理内で確認し、切断時には非同期処理結果としてエラーを返すため、呼び出す必要はありません。(非同期処理中は適切な値を返しません) 通信可能な状態の場合、 GetStatus で詳細な状態を取得できます。 セッションへ参加した後にメッシュが通信不可能な状態になった場合、 GetSessionDisconnectReason で通信不可能になった詳細な理由を確認可能です。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
void nn::pia::session::Session::Cleanup | ( | ) |
クリーンアップ処理を実行します。
セッション終了後やエラー発生後に呼び出し、再度 Session の処理を行える状態にします。 CheckConnectionError が ResultSessionConnectionIsLost を返した場合は、 本関数を呼び出す前に LeaveSessionAsync を呼び出します。
Cleanup 後に再度 Session を使用する場合には、 Startup を呼び出す必要があります。
Result nn::pia::session::Session::ClearSessionSystemPasswordAsync | ( | ) |
セッションに設定されたシステムパスワードを解除します。
この関数はローカル通信では使用できません。
非同期にセッションに設定されたシステムパスワードを解除します。 クライアントでは Session::EventType_ClearSessionSystemPassword で通知されます。 セッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsClearSystemPasswordCompleted でチェックし、結果は GetClearSystemPasswordResult で確認できます。
Result nn::pia::session::Session::CloseJointSessionAsync | ( | ) |
ジョイントセッションの参加締切を行います。
この関数はローカル通信では使用できません。
ジョイントセッションホストのみ使用可能です。 ジョイントセッション参加を締め切る非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsCloseJointSessionCompleted でチェックし、結果は GetCloseJointSessionResult で確認できます。
本関数の呼び出し直前にジョイントセッションに新規参加しようとしているステーションが非同期処理完了後に参加してくる可能性があるため、 セッション参加締切後、マッチメイクセッションとメッシュの参加者数が一致するまで待ってから非同期処理を完了します。 また、一定期間(15秒)経過しても一致しない場合も非同期処理を完了します。この場合、GetCloseJointSessionResult は ResultNegligibleFault を返します。非同期処理完了後に新規参加してくる可能性がありますので、アプリケーションで適切にハンドリング する必要があります。
Result nn::pia::session::Session::CloseSessionAsync | ( | ) |
セッションの参加締切を行います。
セッション参加を締め切る非同期処理を開始します。 セッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsCloseSessionCompleted でチェックし、結果は GetCloseSessionResult で確認できます。
本関数の呼び出し直前にセッションに新規参加しようとしているステーションが非同期処理完了後に参加してくる可能性があるため、 セッション参加締切後、マッチメイクセッションとメッシュの参加者数が一致するまで待ってから非同期処理を完了します。 また、一定期間(15秒)経過しても一致しない場合も非同期処理を完了します。この場合、GetCloseSessionResult は ResultNegligibleFault を返します。非同期処理完了後に新規参加してくる可能性がありますので、アプリケーションで適切にハンドリング する必要があります。
uint32_t nn::pia::session::Session::ConvertCommunityCodeToCommunityId | ( | uint64_t | communityCode | ) |
コミュニティコードをコミュニティIDに変換します。
[in] | communityCode | 変換したいコミュニティコード |
uint64_t nn::pia::session::Session::ConvertCommunityIdToCommunityCode | ( | uint32_t | communityId | ) |
コミュニティIDをコミュニティコードに変換します。
[in] | communityId | 変換したいコミュニティID |
Result nn::pia::session::Session::CreateCommunityAsync | ( | const CreateCommunitySetting * | pCreateCommunitySetting | ) |
コミュニティの構築を行います。
コミュニティ構築を行う非同期処理を開始します。 構築したコミュニティのオーナーになります。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsCreateCommunityCompleted でチェックし、結果は GetCreateCommunityResult で確認できます。
[in] | pCreateCommunitySetting | コミュニティを作成する際の条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Session クラスのインスタンスを作成します(シングルトンパターン)。
デバッグ機能設定用関数 SetDebugSetting でデバッグ用接続経路エミュレーション機能を使用する設定とした場合、 ネットワークトポロジー設定が NetworkTopology_RelayMesh でなければこの関数呼出が失敗します。
[in] | setting | インスタンス作成時に設定するパラメータ |
nn::pia::ResultNotInitialized session モジュールが未初期化です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState インスタンスを作成するタイミングが誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultAlreadyExists 既にインスタンスは作成されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 引数で設定したパラメータの内容や組み合わせに問題があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::CreateSessionAsync | ( | const CreateSessionSetting * | pCreateSessionSetting | ) |
セッションの構築を行います。
セッション構築を行う非同期処理を開始します。 構築したセッションのホストになります。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsCreateSessionCompleted でチェックし、結果は GetCreateSessionResult で確認できます。 また、非同期処理が成功していた場合は、GetSessionInfo でセッションの情報を取得できます。
[in] | pCreateSessionSetting | セッションを作成する際の条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::DestroyCommunityAsync | ( | uint32_t | communityId | ) |
コミュニティの破棄を行います。
コミュニティ破棄を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsDestroyCommunityCompleted でチェックし、結果は GetDestroyCommunityResult で確認できます。
[in] | communityId | 破棄するコミュニティ ID |
Result nn::pia::session::Session::DestroyJointSessionAsync | ( | ) |
ジョイントセッションの解散を行います。
この関数はローカル通信では使用できません。
ジョイントセッションホストのみ使用可能です。 ジョイントセッションの解散を行う非同期処理を開始します。
開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsDestroyJointSessionCompleted でチェックし、結果は GetDestroyJointSessionResult で確認できます。
ホストが本関数でジョイントセッションの解散処理を開始した場合、同行者側でも解散の内部処理が自動的に開始されます。 自動的に開始された処理の進捗は、状態変化イベント通知をハンドリングするか GetStatus で取得できる Status をチェックすることで確認できます。
非同期処理中は、送受信処理関連など一部の API は一時的に使用できません。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
|
inline |
セッション内で有効な StationId のイテレータを返します(非 const 版)。
|
inline |
セッション内で有効な StationId のイテレータを返します(非 const 版)。
Result nn::pia::session::Session::GenerateSessionSystemPasswordAsync | ( | ) |
サーバー側でシステムパスワードを生成し、セッションにそのパスワードを設定します。
この関数はローカル通信では使用できません。
非同期にサーバー側でシステムパスワードを生成し、セッションにそのパスワードを設定します。 非同期処理完了時に引数で渡した pSystemPassword に設定されたパスワードが保存されます。 クライアントでは Session::EventType_SetSessionSystemPassword で通知され、設定されたパスワードは GetSessionSystemPassword で取得できます。 セッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsGenerateSessionSystemPasswordCompleted でチェックし、結果は GetGenerateSessionSystemPasswordResult で確認できます。
Result nn::pia::session::Session::GetBrowseCommunityResult | ( | ) | const |
BrowseCommunityAsync の非同期処理の結果を取得します。
BrowseCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultCancelled 実行中の非同期処理をキャンセルしました。クリーンアップ処理を実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ICommunityInfoList* nn::pia::session::Session::GetBrowsedCommunityInfoList | ( | ) |
BrowseCommunityAsync の非同期処理で検索できたコミュニティのリストを取得します。
BrowseCommunityAsync で開始された非同期処理が完了し、GetBrowseCommunityResult が成功した後、本関数でコミュニティリストを取得できます。
ISessionInfoList* nn::pia::session::Session::GetBrowsedSessionInfoList | ( | ) |
BrowseSessionAsync の非同期処理で検索できたセッションのリストを取得します。
BrowseSessionAsync で開始された非同期処理が完了し、GetBrowseSessionResult が成功した後、本関数でセッションリストを取得できます。
Result nn::pia::session::Session::GetBrowseSessionResult | ( | ) | const |
BrowseSessionAsync の非同期処理の結果を取得します。
BrowseSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultCancelled 実行中の非同期処理をキャンセルしました。クリーンアップ処理を実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
Result nn::pia::session::Session::GetClearSystemPasswordResult | ( | ) | const |
ClearSessionSystemPasswordAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
ClearSessionSystemPasswordAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetCloseJointSessionResult | ( | ) | const |
CloseJointSessionAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
CloseJointSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNegligibleFault マッチメイクセッションとメッシュの参加人数が一致しない状態で一定時間経過しました。アプリケーションで適切にハンドリングしてください。
Result nn::pia::session::Session::GetCloseSessionResult | ( | ) | const |
CloseSessionAsync の非同期処理の結果を取得します。
CloseSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNegligibleFault マッチメイクセッションとメッシュの参加人数が一致しない状態で一定時間経過しました。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
(デバッグ用)リレー接続有効時に、任意の StationIndex と自分自身との接続経路情報を取得します。
本関数はデバッグ用です。製品には組み込まないようお願いします。
自分自身と targetId のステーションとの接続経路情報について、以下の規則で pRelayId へ格納します。 (接続経路情報が取得できなかった場合は pRelayId の値を変更することはありません)
内部処理の状態により接続経路情報の取得に失敗する場合があります。 この状態になるのは一時的であり、内部処理が正常に進行した後は正しく取得できるようになります。
[in] | targetId | 接続経路を取得したい対象の StationId を指定します。 |
[out] | pRelayId | 接続経路情報を示す StationId が格納されます。 |
nn::pia::ResultInvalidState リレー接続が有効ではない場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 対象の StationId が有効な値ではない場合、もしくは引数で指定されたポインタが有効ではない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNotFound 接続経路情報を取得できませんでした。対象のステーションはセッションに参加していません。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultTemporaryUnavailable 接続経路情報を取得できませんでした。ジョイントセッション処理が進行中のため、一時的に API を利用できない状態です。アプリケーションで適切にハンドリングしてください。
Result nn::pia::session::Session::GetCreateCommunityResult | ( | ) | const |
CreateCommunityAsync の非同期処理の結果を取得します。
CreateCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理を進行できない内部状態になりました。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultCreateCommunityFailedUpperLimit コミュニティの作成上限を超えました。クリーンアップ処理を実行してください。
nn::pia::ResultJoinCommunityFailedUpperLimit コミュニティの参加上限を超えました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
Result nn::pia::session::Session::GetCreateSessionResult | ( | ) | const |
CreateSessionAsync の非同期処理の結果を取得します。
CreateSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理を進行できない内部状態になりました。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
nn::pia::ResultTimeOut タイムアウトで終了しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
Result nn::pia::session::Session::GetDestroyCommunityResult | ( | ) | const |
DestroyCommunityAsync の非同期処理の結果を取得します。
DestroyCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultInvalidState 対象のコミュニティのオーナーではありません、もしくは対象のコミュニティが公式コミュニティです。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionIsNotFound 対象のコミュニティが存在しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetDestroyJointSessionResult | ( | ) | const |
DestroyJointSessionAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
DestroyJointSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 処理可能な状態では無かった場合に返ります。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultCompanionStationIsOffline 同行するクライアントがゲームサーバにログインしていない状態でした。クリーンアップ処理を実行してください。
nn::pia::ResultCompanionStationIsLeft 同行するクライアントとの接続が切断しました。クリーンアップ処理を実行してください。
nn::pia::ResultSessionMigrationFailed セッション移行処理に失敗しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetGenerateSessionSystemPasswordResult | ( | ) | const |
GenerateSessionSystemPasswordAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
GenerateSessionSystemPasswordAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetHostStationConnectionInfo | ( | transport::StationConnectionInfo * | pInfoOut | ) |
自身が参加しているセッションのホストを示す StationConnectionInfo を取得します。
セッション参加中、ジョイントセッション参加中の場合、この関数はセッションのホストを示す StationConnectionInfo を返します。
[out] | pInfoOut | 取得したセッションホストを示すアドレスの格納先を示すポインタ |
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState セッションに参加していません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultTemporaryUnavailable セッション移行中です。アプリケーションで適切にハンドリングしてください。
|
inline |
自身が参加しているセッションのホストを示す StationId を取得します。
セッション参加中でない場合、この関数は StationIdInvalid を返します。 セッション参加中、ジョイントセッション参加中の場合、この関数はセッションのホストを示す StationId を返します。
|
inlinestatic |
Session クラスのインスタンスを得ます(シングルトンパターン)。
事前に CreateInstance によるインスタンス生成と初期化を済ませていない場合は、 NULLポインタが返されます。
Result nn::pia::session::Session::GetJoinCommunityResult | ( | ) | const |
JoinCommunityAsync の非同期処理の結果を取得します。
JoinCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理を進行できない内部状態になりました。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultAlreadyJoinedCommunity 参加しようとしたコミュニティに既に参加していた。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultCommunityUserPasswordUnmatch 参加時に指定したユーザーパスワードがコミュニティに設定されたユーザーパスワードと一致しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultCreateCommunityFailedUpperLimit コミュニティの作成上限を超えました。クリーンアップ処理を実行してください。
nn::pia::ResultJoinCommunityFailedUpperLimit コミュニティの参加上限を超えました。クリーンアップ処理を実行してください。
nn::pia::ResultCommunityIsFull 参加しようとしたコミュニティが満員でした。クリーンアップ処理を実行してください。
nn::pia::ResultCommunityIsNotFound 存在しないコミュニティでした。クリーンアップ処理を実行してください。
nn::pia::ResultCommunityIsClosed 参加しようとしたコミュニティが参加可能期間外でした。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetJoinRandomJointSessionResult | ( | ) | const |
JoinRandomJointSessionAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
JoinRandomJointSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 自身がジョイントセッション処理可能な状態では無かった場合に返ります。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失もしくは締め切られました。クリーンアップ処理を実行してください。
nn::pia::ResultMatchmakeSessionIsFull 対象のマッチメイクセッションが満員でした。クリーンアップ処理を実行してください。
nn::pia::ResultDeniedByParticipants セッション参加者が自分をブラックリストに登録しています。クリーンアップ処理を実行してください。
nn::pia::ResultParticipantInBlockList セッションに自分がブロックリストに登録している参加者がいました。クリーンアップ処理を実行してください。
nn::pia::ResultSessionUserPasswordUnmatch 参加時に指定したユーザーパスワードがセッションに設定されたユーザーパスワードと一致しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultSessionSystemPasswordUnmatch 参加時に指定したシステムパスワードがセッションに設定されたシステムパスワードと一致しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsClosed 参加を行おうとしたセッションが締め切られていました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultHostIsNotFriend 参加を行おうとしたセッションのホストがフレンドではありませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultCompanionStationIsOffline 同行するクライアントがゲームサーバにログインしていない状態でした。クリーンアップ処理を実行してください。
nn::pia::ResultCompanionStationIsLeft 同行するクライアントとの接続が切断しました。クリーンアップ処理を実行してください。
nn::pia::ResultSessionMigrationFailed セッション移行処理に失敗しました。クリーンアップ処理を実行してください。
nn::pia::ResultStationConnectionFailed 接続処理に失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultStationConnectionNatTraversalFailedUnknown NAT トラバーサル接続処理に失敗しました。NAT タイプは不明でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEim NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdm NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEim NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdm NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalRequestTimeout NAT トラバーサル接続処理に失敗しました。NAT トラバーサル要求がタイムアウトしました。 インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultJoinRequestDenied メッシュホストに接続を拒否されました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultMeshIsFull 参加を希望したメッシュが満員で、参加できませんでした。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedNoCandidate リレー経路の候補がいなかったため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRttLimit リレー経路の RTT 制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRelayNumLimit リレー経路のリレー依頼数制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedUnknown リレー接続に失敗しました。(詳細不明)クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultInvalidSystemMessage メッシュホストから不正な応答が届いたため、処理を中断しました。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultIncompatibleFormat 相手の通信形式が非互換です。異なる ROM (通信互換の無い Ver.の Pia を使用した ROM)と通信しようとした場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
Result nn::pia::session::Session::GetJoinRandomJointSessionScore | ( | uint32_t * | pScore | ) | const |
JoinRandomJointSessionAsync の非同期処理でセッション参加時のスコアを取得します。
インターネット通信時のみ有効です。 スコアベースマッチメイク指定で JoinRandomJointSessionAsync の非同期処理が完了した後、本関数でスコアを取得できます。 ただし、自分がジョイントセッションホストの場合はスコアは取得できません。
nn::pia::ResultInvalidArgument 引数で指定されたポインタが有効ではない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、開始されていない場合、スコアベースマッチメイクを指定していない、自分が JoinRandomJointSessionAsync を呼び出していない、ジョイントセッションホストであるなど、スコアが取得できない状態の場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::GetJoinRandomSessionResult | ( | ) | const |
JoinRandomSessionAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
JoinRandomSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失もしくは締め切られました。クリーンアップ処理を実行してください。
nn::pia::ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
nn::pia::ResultStationConnectionFailed 接続処理に失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultStationConnectionNatTraversalFailedUnknown NAT トラバーサル接続処理に失敗しました。NAT タイプは不明でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEim NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdm NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEim NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdm NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalRequestTimeout NAT トラバーサル接続処理に失敗しました。NAT トラバーサル要求がタイムアウトしました。 インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultJoinRequestDenied セッションホストに接続を拒否されました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultMeshIsFull 参加を希望したメッシュが満員で、参加できませんでした。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedNoCandidate リレー経路の候補がいなかったため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRttLimit リレー経路の RTT 制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRelayNumLimit リレー経路のリレー依頼数制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedUnknown リレー接続に失敗しました。(詳細不明)クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultInvalidSystemMessage セッションホストから不正な応答が届いたため、処理を中断しました。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultIncompatibleFormat 相手の通信形式が非互換です。異なる ROM (通信互換の無い Ver.の Pia を使用した ROM)と通信しようとした場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
nn::pia::ResultLanLowerVersion アプリケーションの通信バージョンが参加を行おうとしたセッションのものよりも低いです。LAN マッチメイク時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultLanHigherVersion アプリケーションの通信バージョンが参加を行おうとしたセッションのものよりも高いです。LAN マッチメイク時にのみ返ります。クリーンアップ処理を実行してください。
Result nn::pia::session::Session::GetJoinRandomSessionScore | ( | uint32_t * | pScore | ) | const |
JoinRandomSessionAsync の非同期処理でセッション参加時のスコアを取得します。
インターネット通信時のみ有効です。 スコアベースマッチメイク指定で JoinRandomSessionAsync の非同期処理が完了した後、本関数でスコアを取得できます。 ただし、自分がセッションホストの場合はスコアは取得できません。
nn::pia::ResultInvalidArgument 引数で指定されたポインタが有効ではない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、開始されていない場合、スコアベースマッチメイクを指定していない、自分がセッションホストであるなど、スコアが取得できない状態の場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::GetJoinSessionResult | ( | ) | const |
JoinSessionAsync の非同期処理の結果を取得します。
JoinSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失もしくは締め切られました。クリーンアップ処理を実行してください。
nn::pia::ResultMatchmakeSessionIsFull マッチメイクセッションが満員でした。クリーンアップ処理を実行してください。
nn::pia::ResultDeniedByParticipants セッション参加者が自分をブラックリストに登録しています。クリーンアップ処理を実行してください。
nn::pia::ResultParticipantInBlockList セッションに自分がブロックリストに登録している参加者がいました。クリーンアップ処理を実行してください。
nn::pia::ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
nn::pia::ResultInvalidState 接続可能な状態では無かった場合に返ります。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultStationConnectionFailed 接続処理に失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultStationConnectionNatTraversalFailedUnknown NAT トラバーサル接続処理に失敗しました。NAT タイプは不明でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEim NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdm NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEim NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdm NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEimRemoteEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedLocalEdmRemoteEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalFailedBothEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultNatTraversalRequestTimeout NAT トラバーサル接続処理に失敗しました。NAT トラバーサル要求がタイムアウトしました。 インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
nn::pia::ResultJoinRequestDenied セッションホストに接続を拒否されました。
nn::pia::ResultRelayFailedNoCandidate リレー経路の候補がいなかったため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRttLimit リレー経路の RTT 制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedRelayNumLimit リレー経路のリレー依頼数制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultRelayFailedUnknown リレー接続に失敗しました。(詳細不明)クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultInvalidSystemMessage セッションホストから不正な応答が届いたため、処理を中断しました。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionUserPasswordUnmatch 参加時に指定したユーザーパスワードがセッションに設定されたユーザーパスワードと一致しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultSessionSystemPasswordUnmatch 参加時に指定したシステムパスワードがセッションに設定されたシステムパスワードと一致しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsClosed 参加を行おうとしたセッションが締め切られていました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
nn::pia::ResultHostIsNotFriend 参加を行おうとしたセッションのホストがフレンドではありませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultCompanionStationIsOffline 同行するクライアントがゲームサーバにログインしていない状態でした。クリーンアップ処理を実行してください。
nn::pia::ResultIncompatibleFormat 相手の通信形式が非互換です。異なる ROM (通信互換の無い Ver.の Pia を使用した ROM)と通信しようとした場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
nn::pia::ResultNetworkIsFull ネットワークが満員でした。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultTimeOut タイムアウトで終了しました。 local::UdsJoinSessionSetting で設定した暗号鍵が誤っている場合にも返ります。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultLocalLowerVersion 自分の local::LocalNetworkVersion 、または、アプリケーションバージョンが参加を行おうとしたセッションのものよりも低いです。ローカル通信時にのみ返ります。エラー・EULA アプレットでエラーコード付きのエラー表示は行なわず、アプリケーションで独自のメッセージを表示してください。クリーンアップ処理を実行してください。
nn::pia::ResultLocalHigherVersion 自分の local::LocalNetworkVersion 、または、アプリケーションバージョンが参加を行おうとしたセッションのものよりも高いです。ローカル通信時にのみ返ります。エラー・EULA アプレットでエラーコード付きのエラー表示は行なわず、アプリケーションで独自のメッセージを表示してください。クリーンアップ処理を実行してください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultLanLowerVersion アプリケーションの通信バージョンが参加を行おうとしたセッションのものよりも低いです。LAN マッチメイク時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultLanHigherVersion アプリケーションの通信バージョンが参加を行おうとしたセッションのものよりも高いです。LAN マッチメイク時にのみ返ります。クリーンアップ処理を実行してください。
クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
Result nn::pia::session::Session::GetJointSessionHostStationConnectionInfo | ( | transport::StationConnectionInfo * | pInfoOut | ) |
自身が参加しているジョイントセッションのホストを示す StationConnectionInfo を取得します。
ジョイントセッション参加中の場合、この関数はジョイントセッションのホストを示す StationConnectionInfo を返します。
[out] | pInfoOut | 取得したジョイントセッションホストを示すアドレスの格納先を示すポインタ |
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState ジョイントセッションに参加していません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
StationId nn::pia::session::Session::GetJointSessionHostStationId | ( | ) | const |
ジョイントセッションのホストを示す StationId を取得します。
ジョイントセッション参加中でない場合、この関数は StationIdInvalid を返します。 ジョイントセッション参加中の場合、この関数はジョイントセッションのホストを示す StationId を返します。
uint32_t nn::pia::session::Session::GetJointSessionId | ( | ) | const |
ジョイントセッションのセッション ID を取得します。
ローカル通信の時は、常に InvalidSessionId を返します。
const ISessionInfo* nn::pia::session::Session::GetJointSessionInfo | ( | ) | const |
参加中のジョイントセッションのセッション情報を取得します。
セッション情報は自動的には更新されません。セッション情報の更新は RequestJointSessionInfoAsync で行う必要があります。
SessionOpenStatus nn::pia::session::Session::GetJointSessionOpenStatus | ( | ) | const |
Result nn::pia::session::Session::GetLeaveCommunityResult | ( | ) | const |
LeaveCommunityAsync の非同期処理の結果を取得します。
LeaveCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultInvalidState 対象のコミュニティに参加していませんでした。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionIsNotFound 対象のコミュニティが存在しませんでした。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetLeaveSessionResult | ( | ) | const |
LeaveSessionAsync の非同期処理の結果を取得します。
LeaveSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
Result nn::pia::session::Session::GetLocalStationConnectionInfo | ( | transport::StationConnectionInfo * | pInfoOut | ) |
自分自身を示す StationConnectionInfo を取得します。
セッション参加中、ジョイントセッション参加中の場合、この関数は自分自身を示す StationConnectionInfo を返します。
[out] | pInfoOut | 取得したセッションホストを示すアドレスの格納先を示すポインタ |
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState セッションに参加していません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultTemporaryUnavailable セッション移行中です。アプリケーションで適切にハンドリングしてください。
|
inline |
セッション内での自身を示す StationId を取得します。
セッション参加中でない場合、この関数は StationIdInvalid を返します。
uint16_t nn::pia::session::Session::GetMatchmakeSessionParticipantNum | ( | ) | const |
現在参加しているセッションで接続しているマッチメイクセッション参加者数を取得します。
現在参加しているセッションで接続しているマッチメイクセッション参加者数を取得します。マッチメイクセッションの参加者が増減する際に更新されます。
セッションの状態に応じて、以下の値を返します。
GetStatus が Status_ConnectedSession を返すときは、参加中のマッチメイクセッションに参加しているマッチメイクセッション参加者数を返します。 GetStatus が Status_MigratingSession を返すときは、不定値を返します。 GetStatus が Status_ConnectedJointSession を返すときは、参加中のジョイントセッションのマッチメイクセッションに参加しているマッチメイクセッション参加者数を返します。
uint16_t nn::pia::session::Session::GetMatchmakeSessionStationNum | ( | ) | const |
マッチメイクセッションに参加しているステーション数を取得します。
マッチメイクセッションに参加しているステーション数を取得します。マッチメイクセッションの参加者が増減する際に更新されます。 あるステーションがマッチメイクセッションに参加してからセッションに参加するまでの間に、GetStationNum が返す値と一致しない期間があります。
セッションの状態に応じて、以下の値を返します。
GetStatus が Status_ConnectedSession を返すときは、参加中のマッチメイクセッションに参加しているステーション数を返します。 GetStatus が Status_MigratingSession を返すときは、不定値を返します。 GetStatus が Status_ConnectedJointSession を返すときは、参加中のジョイントセッションのマッチメイクセッションに参加しているステーション数を返します。
Result nn::pia::session::Session::GetOpenJointSessionResult | ( | ) | const |
OpenJointSessionAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
OpenJointSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetOpenSessionResult | ( | ) | const |
OpenSessionAsync の非同期処理の結果を取得します。
OpenSessionAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
uint16_t nn::pia::session::Session::GetPlayerNum | ( | ) | const |
現在参加しているセッションで接続しているプレイヤー数を取得します。
現在参加しているセッションで接続しているプレイヤー数を取得します。セッション参加者が増減する際に更新されます。
セッションの状態に応じて、以下の値を返します。
GetStatus が Status_ConnectedSession を返すときは、参加中のセッションで接続しているプレイヤー数を返します。 GetStatus が Status_MigratingSession を返すときは、不定値を返します。 GetStatus が Status_ConnectedJointSession を返すときは、参加中のジョイントセッションのセッションで接続しているプレイヤー数を返します。
Result nn::pia::session::Session::GetRequestJointSessionInfoResult | ( | ) | const |
RequestJointSessionInfoAsync の非同期処理の結果を取得します。
RequestJointSessionInfoAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetRequestSessionInfoResult | ( | ) | const |
RequestSessionInfoAsync の非同期処理の結果を取得します。
RequestSessionInfoAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
DisconnectReason nn::pia::session::Session::GetSessionDisconnectReason | ( | ) | const |
メッシュが通信不可能となった理由を取得します。
メッシュが通信可能な状態だった場合は、常に UNKNOWN_REASON が返されます。
|
inline |
セッション ID を取得します。
ローカル通信時には同じセッション ID を持つ異なるセッションが存在する場合があります。
uint32_t nn::pia::session::Session::GetSessionId | ( | StationId | id | ) | const |
指定したステーション ID のステーションが参加しているセッション ID を取得します。
指定したステーション ID のステーションが参加しているセッション ID を取得します。
[in] | id | ステーション ID。 |
const ISessionInfo* nn::pia::session::Session::GetSessionInfo | ( | ) | const |
参加中のセッション情報を取得します。
セッション情報は自動的には更新されません。セッション情報の更新は RequestSessionInfoAsync で行う必要があります。
SessionOpenStatus nn::pia::session::Session::GetSessionOpenStatus | ( | ) | const |
const common::String& nn::pia::session::Session::GetSessionSystemPassword | ( | ) |
GenerateSessionSystemPasswordAsync でセッションに設定されたシステムパスワードを取得します。
この関数はローカル通信では使用できません。
GenerateSessionSystemPasswordAsync でセッションに設定されたシステムパスワードを取得します。 登録されたイベントコールバックに通知された Session::EventType_SetSessionSystemPassword の後、 セッションに設定されたシステムパスワードを取得できます。
uint16_t nn::pia::session::Session::GetStationNum | ( | ) | const |
現在参加しているセッションで接続している有効なステーション数を取得します。
現在参加しているセッションで接続している有効なステーション数を取得します。セッション参加者が増減する際に更新されます。
セッションの状態に応じて、以下の値を返します。
GetStatus が Status_ConnectedSession を返すときは、参加中のセッションで接続しているステーション数を返します。 GetStatus が Status_MigratingSession を返すときは、不定値を返します。 GetStatus が Status_ConnectedJointSession を返すときは、参加中のジョイントセッションのセッションで接続しているステーション数を返します。
Status nn::pia::session::Session::GetStatus | ( | ) | const |
int32_t nn::pia::session::Session::GetSyncClockPulseInterval | ( | void | ) | const |
int64_t nn::pia::session::Session::GetTime | ( | void | ) | const |
セッション作成時刻からの経過時間(同期クロック)をミリ秒で返します。
同期クロックは、セッションに参加している Station 間で同期される時計です。 セッションに参加したクライアントは、定期的に時刻同期パルスをセッションホストに送信します。 ホストがこのパルスに応答することで、ホストと各クライアントの時刻同期が実現されます。 この同期パルス送信間隔はデフォルトで 2 秒ですが、アプリケーションがこの値を 変更することもできます。詳しくは SetSyncClockPulseInterval(), GetSyncClockPulseInterval() を参照してください。
Result nn::pia::session::Session::GetUpdateCommunityResult | ( | ) | const |
UpdateCommunityAsync の非同期処理の結果を取得します。
UpdateCommunityAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。コミュニティのオーナーではないか、公式コミュニティを更新しようとしていないか、ユーザーパスワード無しのコミュニティにパスワードを設定しようとしていないか、または他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のコミュニティが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetUpdateJointSessionSettingResult | ( | ) | const |
UpdateJointSessionSettingAsync の非同期処理の結果を取得します。
この関数はローカル通信では使用できません。
UpdateJointSessionSettingAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::session::Session::GetUpdateSessionSettingResult | ( | ) | const |
UpdateSessionSettingAsync の非同期処理の結果を取得します。
UpdateSessionSettingAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
nn::pia::ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
nn::pia::ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
nn::pia::ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
Result nn::pia::session::Session::GetUplinkBitRate | ( | int32_t * | pBps | ) |
ビットレート判定機能によって計測された、アップリンク方向の回線のビットレートを取得します。
この API 呼び出しで得られる値は、測定処理において単位時間あたりに受信できたデータ量にすぎず、 必ずしも回線の真の実力を表すものではないことに注意してください。 実際には高ビットレートが期待できる回線であったとしても、アプリケーション側の要求水準が 控えめなものであれば、測定処理におけるデータ送受信量も控えめなものとなるので、 取得できる bps 値は小さめなものとなります。
[out] | pBps | 測定されたビットレート値がセットされます。単位は bps です。測定値が得られなかった場合は負の値がセットされます。 |
ResultNotInitialized インスタンスが初期化されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState この関数を呼び出すタイミングが誤っています。ビットレート判定機能を利用しない設定であるにもかかわらず、本 API を呼び出している可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
uint16_t nn::pia::session::Session::GetValidStationIdNum | ( | ) | const |
セッション内の有効な StationId の数を取得します。
セッション参加中でない場合、この関数は 0 を返します。
bool nn::pia::session::Session::IsAsyncProcessInProgress | ( | ) | const |
セッション API の非同期処理が行われているかを取得します。
bool nn::pia::session::Session::IsBitRateCheckCompleted | ( | ) | const |
ビットレート判定機能でのビットレート値が取得できるかどうかを取得します。
bool nn::pia::session::Session::IsBitRateCheckEnabled | ( | ) | const |
ビットレート判定機能が有効かどうかを取得します。
bool nn::pia::session::Session::IsBrowseCommunityCompleted | ( | ) | const |
BrowseCommunityAsync の非同期処理の完了をチェックします。
BrowseCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsBrowseSessionCompleted | ( | ) | const |
BrowseSessionAsync の非同期処理の完了をチェックします。
BrowseSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsClearSystemPasswordCompleted | ( | ) | const |
ClearSessionSystemPasswordAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
ClearSessionSystemPasswordAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsCloseJointSessionCompleted | ( | ) | const |
CloseJointSessionAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
CloseJointSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsCloseSessionCompleted | ( | ) | const |
CloseSessionAsync の非同期処理の完了をチェックします。
CloseSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsCreateCommunityCompleted | ( | ) | const |
CreateCommunityAsync の非同期処理の完了をチェックします。
CreateCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsCreateSessionCompleted | ( | ) | const |
CreateSessionAsync の非同期処理の完了をチェックします。
CreateSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsDestroyCommunityCompleted | ( | ) | const |
DestroyCommunityAsync の非同期処理の完了をチェックします。
DestroyCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsDestroyJointSessionCompleted | ( | ) | const |
DestroyJointSessionAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
DestroyJointSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsGenerateSessionSystemPasswordCompleted | ( | ) | const |
GenerateSessionSystemPasswordAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
GenerateSessionSystemPasswordAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsHost | ( | ) | const |
自分自身がホストであるかどうかを取得します。
この関数は通常セッションのホストであるかどうかを返します。
bool nn::pia::session::Session::IsHostMigrationEnabled | ( | ) | const |
ホストマイグレーションが有効になっているかを取得します。
session::Session::Startup の引数に設定した値により返る値が決定します。
bool nn::pia::session::Session::IsJoinCommunityCompleted | ( | ) | const |
JoinCommunityAsync の非同期処理の完了をチェックします。
JoinCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsJoinRandomJointSessionCompleted | ( | ) | const |
JoinRandomJointSessionAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
JoinRandomJointSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsJoinRandomSessionCompleted | ( | ) | const |
JoinRandomSessionAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
JoinRandomSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsJoinSessionCompleted | ( | ) | const |
JoinSessionAsync の非同期処理の完了をチェックします。
JoinSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsJointSessionHost | ( | ) | const |
自分自身がジョイントセッションのホストであるかどうかを取得します。
この関数はジョイントセッションのホストであるかどうかを返します。
bool nn::pia::session::Session::IsLeaveCommunityCompleted | ( | ) | const |
LeaveCommunityAsync の非同期処理の完了をチェックします。
LeaveCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsLeaveSessionCompleted | ( | ) | const |
LeaveSessionAsync の非同期処理の完了をチェックします。
LeaveSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsOpenJointSessionCompleted | ( | ) | const |
OpenJointSessionAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
OpenJointSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsOpenSessionCompleted | ( | ) | const |
OpenSessionAsync の非同期処理の完了をチェックします。
OpenSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsRequestJointSessionInfoCompleted | ( | ) | const |
RequestJointSessionInfoAsync の非同期処理の完了をチェックします。
RequestJointSessionInfoAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsRequestSessionInfoCompleted | ( | ) | const |
RequestSessionInfoAsync の非同期処理の完了をチェックします。
RequestSessionInfoAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsUpdatableSelectionPriority | ( | uint8_t | priority | ) | const |
更新する予定の値で UpdateSelectionPriority が使用可能かを返します。
[in] | priority | 更新予定のマッチメイクの優先度 |
bool nn::pia::session::Session::IsUpdateCommunityCompleted | ( | ) | const |
UpdateCommunityAsync の非同期処理の完了をチェックします。
UpdateCommunityAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsUpdateJointSessionSettingCompleted | ( | ) | const |
UpdateJointSessionSettingAsync の非同期処理の完了をチェックします。
この関数はローカル通信では使用できません。
UpdateJointSessionSettingAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsUpdateSessionSettingCompleted | ( | ) | const |
UpdateSessionSettingAsync の非同期処理の完了をチェックします。
UpdateSessionSettingAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::session::Session::IsValidStationId | ( | StationId | id | ) | const |
任意の StationId がセッション内で現在有効かどうかを確認します。
[in] | id | 確認したい StationId を指定します。 |
Result nn::pia::session::Session::JoinCommunityAsync | ( | const JoinCommunitySetting * | pJoinCommunitySetting | ) |
コミュニティへの参加を行います。
コミュニティ参加を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsJoinCommunityCompleted でチェックし、結果は GetJoinCommunityResult で確認できます。
[in] | pJoinCommunitySetting | 参加するコミュニティの条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::JoinRandomJointSessionAsync | ( | const JoinRandomSessionSetting * | pJoinRandomSessionSetting | ) |
ランダムマッチメイクでジョイントセッションに参加します。
この関数はローカル通信では使用できません。
ホストのみ使用可能です。 ランダムマッチメイクでジョイントセッションに参加を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsJoinRandomJointSessionCompleted でチェックし、結果は GetJoinRandomJointSessionResult で確認できます。
ホストが本関数で非同期処理を開始した場合、クライアント側でもランダムマッチメイクでジョイントセッションに参加を行う内部処理が自動的に開始されます。 自動的に開始された処理の進捗は、状態変化イベント通知をハンドリングするか GetStatus で取得できる Status をチェックすることで確認できます。
非同期処理中は、送受信処理関連など一部の API は一時的に使用できません。
[in] | pJoinRandomSessionSetting | ランダムマッチメイクの設定を指定します。 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないか、ホストかどうか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::JoinRandomSessionAsync | ( | const JoinRandomSessionSetting * | pJoinRandomSessionSetting | ) |
ランダムマッチメイクを行いセッションの構築/参加を行います。
この関数はローカル通信では使用できません。
ランダムマッチメイクを行った後、セッションの構築/参加を行う非同期処理を開始します。開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsJoinRandomSessionCompleted でチェックし、結果は GetJoinRandomSessionResult で確認できます。 非同期処理が成功していた場合は、GetSessionInfo でセッション情報を取得できますが、非同期処理中にセッションホストが UpdateSessionSettingAsync でセッション情報を更新した場合、 取得する情報が更新前の情報となる場合があります。
JoinRandomSessionSetting に設定する検索条件はインターネット通信時のみ複数指定でき、最大で inet::SearchCriteriaListSizeMax まで指定できます。 複数の検索条件を指定した場合は、リストに最初に指定された条件から順に検索を行い、参加できた段階で打ち切ります。 検索条件として指定できる数より多くの条件を設定すると nn::pia::ResultInvalidArgument が返ります。 参加が締め切られているセッション、既に満員のセッションは自動的に検索対象外となります。 また、過去 3 回にわたってクライアントとして参加したセッションは、サーバー側で記録され、参加対象から外れるようになっています。この参加記録は約 1 時間で無効になります。
[in] | pJoinRandomSessionSetting | ランダムマッチメイクの設定 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。ローカル通信では対応していません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。 インターネット通信時は他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::JoinSessionAsync | ( | const JoinSessionSetting * | pJoinSessionSetting | ) |
セッションへの参加を行います。
セッション参加を行う非同期処理を開始します。
開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsJoinSessionCompleted でチェックし、結果は GetJoinSessionResult で確認できます。 非同期処理が成功していた場合は、GetSessionInfo でセッション情報を取得できますが、非同期処理中にセッションホストが UpdateSessionSettingAsync でセッション情報を更新した場合、 取得する情報が更新前の情報となる場合があります。
pJoinSessionSetting | 参加するセッションの条件 |
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
セッションから任意のステーションを追放します。(ホスト専用)
ホストのみ使用可能です。
引数で指定した StationId が割り当てられたステーションへ追放通知を伝達し、 追放通知を受けた対象のステーションではセッション離脱処理が行われます。
追放通知の通信遅延などが原因で、この関数呼出に成功した後実際にセッションから離脱するまでにある程度の時間がかかる場合があります。
[in] | id | 追放したいステーションに割り当てられている StationId を指定します。 |
nn::pia::ResultInvalidState ホスト以外が呼び出した場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 引数で指定された StationId が、ホスト自身を示す Id やセッションに参加していない Id だった場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultBufferIsFull 追放処理管理用バッファもしくは追放通知送信用バッファに空きが無かった場合に返されます。時間をあけてから再度実行すれば、成功する可能性があります。アプリケーションで適切にハンドリングしてください。
Result nn::pia::session::Session::LeaveCommunityAsync | ( | uint32_t | communityId | ) |
コミュニティからの離脱を行います。
コミュニティ離脱を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsLeaveCommunityCompleted でチェックし、結果は GetLeaveCommunityResult で確認できます。
[in] | communityId | 離脱するコミュニティ ID |
Result nn::pia::session::Session::LeaveSessionAsync | ( | ) |
セッションからの離脱を行います。
セッション離脱を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsLeaveSessionCompleted でチェックし、結果は GetLeaveSessionResult で確認できます。
Result nn::pia::session::Session::OpenJointSessionAsync | ( | const UpdateSessionSetting * | pUpdateSessionSetting = NULL | ) |
ジョイントセッションの参加受付を開始します。
この関数はローカル通信では使用できません。
ジョイントセッションホストのみ使用可能です。 ジョイントセッション参加受付を開始する非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsOpenJointSessionCompleted でチェックし、結果は GetOpenJointSessionResult で確認できます。
UpdateSessionSetting の派生クラスのインスタンスを引数に指定する場合、参加受付の開始と同時にジョイントセッションの設定を更新します。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、ジョイントセッション参加状態であること、ジョイントセッションホストであることを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::OpenSessionAsync | ( | const UpdateSessionSetting * | pUpdateSessionSetting = NULL | ) |
セッションの参加受付を開始します。
セッション参加受付を開始する非同期処理を開始します。 セッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsOpenSessionCompleted でチェックし、結果は GetOpenSessionResult で確認できます。
UpdateSessionSetting の派生クラスのインスタンスを引数に指定する場合、参加受付の開始と同時にセッションの設定を更新します。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、セッション参加状態であること、セッションホストであることを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
void nn::pia::session::Session::RegisterJoiningApprovalCallback | ( | JoiningApprovalCallback | callback | ) |
セッションホストで参加要求が来た際に呼び出される承認/拒否判定コールバック関数を登録します
自分がセッションホストで、クライアントから参加要求を受け取った場合に呼び出されるコールバックです。 コールバック関数は、common::Scheduler::Dispatch の内部で呼び出されます。 登録する関数内には長時間ブロックするような処理を記述してはいけません。
[in] | callback | 登録するコールバック関数へのポインタを指定します。 |
Result nn::pia::session::Session::RegisterSessionEventCallback | ( | SessionEventCallback | callback, |
void * | pApplicationParam = NULL |
||
) |
セッションの状態が変化した場合に呼び出されるコールバック関数を登録します
セッションの状態変化(ステーション参加/離脱)発生時に呼び出されるコールバック関数を登録します。 登録する関数内には長時間ブロックするような処理を記述してはいけません。
[in] | callback | 登録するコールバック関数へのポインタを指定します。 |
[in] | pApplicationParam | コールバック関数の引数として渡されるパラメータへのポインタを指定します。指定しない場合はパラメータ無し(NULL)となります。 |
Result nn::pia::session::Session::RelayEmulation | ( | StationIndex | index1, |
StationIndex | index2 | ||
) |
(デバッグ用)リレー接続有効時に、任意の StationIndex 間の接続経路エミュレーション設定を指定します。
本関数はデバッグ用です。製品には組み込まないようお願いします。
本関数を使用する場合は Session::SetDebugSetting で接続経路エミュレーション機能が有効となるように設定します。
対象の StationIndex 間の接続方法は(たとえ実際には直通接続ができる場合でも)必ずリレー接続となります。
本関数はセッションに接続していないタイミングで呼び出します。 セッション参加済みの状態で接続経路エミュレーション設定を変更することは動作保証外とします。
[in] | index1 | 対象の StationIndex を指定します。 |
[in] | index2 | 対象の StationIndex を指定します。 |
nn::pia::ResultInvalidState リレー接続が有効ではない場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidArgument 対象の StationIndex が有効な値ではない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::session::Session::RequestJointSessionInfoAsync | ( | ) |
参加中のジョイントセッションのセッション情報の取得要求を行います。
参加中のジョイントセッションのセッション情報の取得要求を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsRequestJointSessionInfoCompleted でチェックし、結果は GetRequestJointSessionInfoResult で確認できます。 非同期処理が成功していた場合は、GetJointSessionInfo でセッション情報を取得できますが、非同期処理中にジョイントセッションホストが UpdateJointSessionSettingAsync でセッション情報を更新した場合、 取得する情報が更新前の情報となる場合があります。
インターネット通信の場合、ゲームサーバーアクセスを行います。1 分間に 10 回以上の呼び出しを行ってはいけません。
Result nn::pia::session::Session::RequestSessionInfoAsync | ( | ) |
参加中のセッション情報の取得要求を行います。
参加中のセッション情報の取得要求を行う非同期処理を開始します。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsRequestSessionInfoCompleted でチェックし、結果は GetRequestSessionInfoResult で確認できます。 非同期処理が成功していた場合は、GetSessionInfo でセッション情報を取得できますが、非同期処理中にセッションホストが UpdateSessionSettingAsync でセッション情報を更新した場合、 取得する情報が更新前の情報となる場合があります。
インターネット通信の場合、ゲームサーバーアクセスを行います。1 分間に 10 回以上の呼び出しを行ってはいけません。
void nn::pia::session::Session::ResetRelayEmulation | ( | ) |
(デバッグ用)リレー接続有効時に、接続経路エミュレーション設定を初期化します。
本関数はデバッグ用です。製品には組み込まないようお願いします。
RelayEmulation を使用して設定された接続経路エミュレーションについて全て初期化します。 (全ての StationIndex の組み合わせに対して EmulationType_None を設定した状態と同等です)
本関数はセッションに接続していないタイミングで呼び出します。 セッション参加済みの状態で接続経路エミュレーション設定を変更することは動作保証外とします。
|
static |
(デバッグ用) Session のデバッグ用機能について設定します。
本関数は Session のインスタンスが存在しない状態で呼出可能です。 CreateInstance で Session のインスタンスを作成する前に呼び出します。
DebugSetting 構造体の isRelayEmulationEnabled を true に設定した場合、デバッグ用接続経路エミュレーション機能を使用する設定となります。 接続経路エミュレーション機能を使用する設定の場合、ネットワークトポロジーを NetworkTopology_RelayMesh に設定しない限り CreateInstance が成功しません。
DebugSetting 構造体の isMatchmakeAnalysisEnabled を true に設定した場合、マッチメイク分析機能を使用する設定となります。
本関数を呼び出さなかった場合、本関数が関連するデバッグ用機能は全て無効(使用しない)設定となります。
void nn::pia::session::Session::SetMatchmakeAnalysisToken | ( | const transport::Station::IdentificationToken * | pToken | ) |
マッチメイク分析機能のセッション参加承認コールバックの不整合検知判定で使用する transport::Station::IdentificationToken を設定します。
[in] | pToken | セッション参加承認コールバックの不整合検知判定で使用するトークン |
Result nn::pia::session::Session::SetMaxNumOfRelayRoutesAssignedToStation | ( | uint16_t | num | ) |
リレー接続有効時に、ステーション1台に割り当てられる転送依頼数の最大制限値を設定します。
リレー接続経路探索&決定時の指標として本関数で設定された制限値を利用します。
設定変更しない場合のデフォルト値は "[セッション最大参加数] * [セッション最大参加数]" です。
同じセッションへの参加者は全員同じ値を設定することを推奨します。(異なる値を設定した場合は動作保証外とします)
リレー接続が有効なネットワークトポロジーの場合かつ Startup 前にのみ使用可能です。
[in] | num | 設定したい最大制限値を指定します。 |
Result nn::pia::session::Session::SetMaxRtt | ( | uint16_t | rtt | ) |
リレー接続有効時に、1つのリレー接続経路の合計 RTT の最大制限値を設定します。
リレー接続経路探索&決定時の指標として本関数で設定された制限値を利用します。
設定変更しない場合のデフォルト値は session::SessionMaxRttDefault です。
同じセッションへの参加者は全員同じ値を設定することを推奨します。(異なる値を設定した場合は動作保証外とします)
リレー接続が有効なネットワークトポロジーの場合かつ Startup 前にのみ使用可能です。
[in] | rtt | 設定したい最大制限値を指定します。単位は msec です。 |
void nn::pia::session::Session::SetSyncClockPulseInterval | ( | int32_t | interval | ) |
同期クロックの同期パルス送信間隔を指定します。
[in] | interval | 同期パルス送信の時間間隔です。単位はミリ秒です。 |
Result nn::pia::session::Session::Startup | ( | const StartupSetting & | startupSetting | ) |
スタートアップ処理を実行します。
session::EndSetup() を呼び出して Session の初期化処理を終えた後で呼び出します。
引数に指定する StartupSetting 構造体はマッチメイク種別毎にこの構造体を継承する以下の構造体を指定します。
マッチメイク種別に依らず、共通して設定できる項目は以下になります。
インターネットマッチメイク時は以下の項目を設定できます。
ローカルマッチメイク時は以下の項目を設定できます。
LAN マッチメイク時は以下の項目を設定できます。
maxSilenceTime, keepAliveSendingInterval, mtuSize に関して独自の値を設定する場合、実際の動作を確認しながら調整する必要があります。
識別トークンは接続処理時に接続相手と共有され、transport::Station と結び付けられて保管されます。 識別トークンを使用する必要が無い場合は、特に設定を行う必要はありません。 Startup 以外で、自分自身を示す識別トークンを指定、変更する方法はありません。セッション使用中に識別トークンを変更できません。
プレイヤーの名前の長さは20文字(NULL終端を含めない)以内である必要があります。文字コードは UTF-16LE である必要があります。 言語コードはアプリケーションで別リージョンの言語を判定する場合に指定します。本体の言語設定を使用したい場合には、nn::cfg::CTR::GetLanguage() の値を使用可能です。 設定したプレイヤー情報はセッション参加者間で共有されます。
ローカルマッチメイク時は SDK の UDS 通信層で暗号化されるため、暗号化を設定することはできません。
[in] | startupSetting | スタートアップ時の各種設定項目(マッチメイク種別毎に継承している構造体を指定します) |
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。ローカル通信時にのみ返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
|
virtual |
デバッグに有用な情報をプリントします。
[in] | flag | トレースフラグの論理和。詳細は TraceFlag 型を参照してください。 |
void nn::pia::session::Session::UnregisterJoiningApprovalCallback | ( | ) |
登録されている参加要求が来た際に呼び出される承認/拒否判定コールバック関数の登録を解除します。
void nn::pia::session::Session::UnregisterSessionEventCallback | ( | ) |
登録されているセッション状態変化コールバック関数を登録解除します。
Result nn::pia::session::Session::UpdateCommunityAsync | ( | const UpdateCommunitySetting * | pUpdateCommunitySetting | ) |
指定されたコミュニティの設定を更新します。
非同期に指定したコミュニティの設定を更新します。 コミュニティホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsUpdateCommunityCompleted でチェックし、結果は GetUpdateCommunityResult で確認できます。
[in] | pUpdateCommunitySetting | 変更する設定をまとめる UpdateCommunitySetting 派生クラスのポインタ |
Result nn::pia::session::Session::UpdateJointSessionSettingAsync | ( | const UpdateSessionSetting * | pUpdateSessionSetting | ) |
ジョイントセッションの設定を更新します。
この関数はローカル通信では使用できません。
非同期にジョイントセッションの設定を更新します。 ジョイントセッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsUpdateJointSessionSettingCompleted でチェックし、結果は GetUpdateJointSessionSettingResult で確認できます。
[in] | pUpdateSessionSetting | 変更する設定をまとめる UpdateSessionSetting 派生クラスのポインタ |
Result nn::pia::session::Session::UpdateSelectionPriority | ( | uint8_t | priority | ) | const |
同じ条件のセッションが見つかった際のマッチメイクの優先度を更新します。
この関数はローカル通信では使用できません。
セッション中に 0, inet::SessionSelectionPriorityMax 以外の値で複数回更新する場合は、 前回の呼び出しから 30 秒間待つ必要があります。 この確認には session::Session::IsUpdatableSelectionPriority を使用します。 inet::SelectionMethod_BroadenRangeWithSelectionPriority で検索を行った場合、マッチメイクの優先度がより大きいセッションが優先されるようになります。 inet::SelectionMethod_ScoreBased で検索を行った場合、設定したスコアの計算にマッチメイクの優先度が使用されます。 NMAS のマッチメイクセッションリストにある進行度の値を確認することで設定の確認が行えます。
nn::pia::ResultInvalidArgument 設定した引数が設定可能な最大値より大きい値です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultInvalidState LAN マッチ機能を使用している、ホストではない、のいずれかの理由で実行できません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultTemporaryUnavailable 0, inet::SessionSelectionPriorityMax 以外の値で前回の呼び出しから 30 秒以内に呼び出されました。session::Session::IsUpdatableSelectionPriority で呼び出し可能になっていることを確認して呼ぶ必要があります。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
[in] | priority | 設定するマッチメイクの優先度 |
Result nn::pia::session::Session::UpdateSessionSettingAsync | ( | const UpdateSessionSetting * | pUpdateSessionSetting | ) |
指定されたセッションの設定を更新します。
非同期に指定したセッションの設定を更新します。 セッションホストであるときに実行できます。 開始した処理は common::Scheduler::Dispatch を定期的に呼び出すことで進行します。 処理の完了は IsUpdateSessionSettingCompleted でチェックし、結果は GetUpdateSessionSettingResult で確認できます。
[in] | pUpdateSessionSetting | 変更する設定をまとめる UpdateSessionSetting 派生クラスのポインタ |