CTR-Pia
5.4.3
Game Communication Engine
|
framework モジュールを使用するためのシングルトンクラスです。 [詳細]
構成 | |
struct | CloneUpdateResult |
PiaClone の更新処理結果です。 [詳細] | |
Public 型 | |
enum | State { State_NotInitialized = 0, State_NetworkCleanedUp = 0, State_NetworkStartedUp = 1, State_LoggedOut = 1, State_LoggedIn = 2, State_SessionFinalized = 2, State_SessionInitialized = 3, State_SessionCleanedUp = 3, State_SessionStartedUp = 4, State_SessionLeft = 4, State_SessionJoined = 5, State_JointSessionJoined = 6, State_JointSessionLeft = 4 } |
セッション参加処理の進行状態です。 [詳細] | |
Public メソッド | |
Result | BrowseSessionAsync (const session::SessionSearchCriteria *pCriteria) |
セッション検索を行う非同期処理を開始します。 | |
Result | ChangeStateAsync (State transitionState) |
セッション参加処理の進行状態の状態遷移を開始します。 | |
CloneUpdateResult | CloneUpdate () |
PiaClone の更新処理を行います。 | |
Result | CloseSessionAsync () |
セッションの参加締切を行います。 | |
Framework::State | ConvertHandlingTypeToState (Result::HandlingType handlingType) |
ハンドリングタイプを State に変換します。 | |
uint32_t | CreateLocalCommunicationId (uint32_t uniqueId, bool isTrial=false) const |
ユニーク ID からローカル通信 ID を作成します。 | |
Result | CreateSessionAsync (const session::CreateSessionSetting *pSetting) |
セッション作成処理を行う非同期処理を開始します。 | |
Result | DestroyJointSessionAsync () |
ジョイントセッションを解散する非同期処理を開始します。 | |
session::ISessionInfoList * | GetBrowsedSessionInfoList () |
BrowseSessionAsync の非同期処理で検索できたセッションのリストを取得します。 | |
Result | GetBrowseSessionResult () const |
セッション検索の結果を取得します。 | |
Result | GetChangeStateResult () const |
Framework::ChangeStateAsync() の非同期処理の結果を取得します。 | |
clone::CloneProtocol * | GetCloneProtocol () |
CloneProtocol を取得します。 | |
Result | GetCloseSessionResult () const |
Framework::CloseSessionAsync() の非同期処理の結果を取得します。 | |
Result | GetCreateSessionResult () const |
セッション作成処理の結果を取得します。 | |
uint32_t | GetDelay () |
実際に設定されている入力遅延の値を取得します。 | |
Result | GetDestroyJointSessionResult () const |
DestroyJointSessionAsync の非同期処理の結果を取得します。 | |
Result | GetHandleErrorResult () const |
Framework::HandleErrorAsync() の非同期処理の結果を取得します。 | |
InetService * | GetInetService () |
InetService インスタンスを取得します。 | |
Result | GetIsNoDataFrame (bool *isNoDataFrame) |
同期データを取得できないフレームかどうかを取得します。 | |
Result | GetJoinSessionResult () const |
セッション参加の結果を取得します。 | |
uint32_t | GetMaxDelay () |
入力遅延の最大値を取得します。 | |
Result | GetOpenSessionResult () const |
Framework::OpenSessionAsync() の非同期処理の結果を取得します。 | |
Result | GetRequestSessionInfoResult () const |
RequestSessionInfoAsync の非同期処理の結果を取得します。 | |
uint32_t | GetSendDataSizeMax () |
Framework::SendUnreliable() 、Framework::SendToAllUnreliable() で一度に送信可能なデータサイズの最大値を取得します。単位はバイトです。 | |
const session::ISessionInfo * | GetSessionInfo () const |
参加中のセッション情報を取得します。 | |
State | GetState () const |
セッション参加処理の進行状態を取得します。 | |
transport::Station * | GetStation (StationId id) |
StationId に対応する Station を得ます。 | |
Result | GetStationIdList (StationId *stationIdListBuf, uint32_t stationIdListBufLength, uint32_t &stationNum) |
stationId のリストを取得します。 | |
Result | GetSyncData (StationId stationId, uint32_t dataId, void *pBuffer) |
PiaSync を用いて受信する同期データを取得します。 | |
uint32_t | GetSyncFrameNo () |
sync::SyncProtocol::State_Synchronized となってからのフレーム数を取得します。 | |
sync::SyncProtocol::State | GetSyncState () |
同期通信の進行状態を取得します。 | |
Result | GetUpdateSessionSettingResult () const |
UpdateSessionSettingAsync の非同期処理の結果を取得します。 | |
Result | HandleErrorAsync (State transitionState, Result result) |
切断などが発生した際のエラーハンドリングを行います。 | |
bool | IsBrowseSessionCompleted () const |
セッション検索が成功したか確認します。 | |
bool | IsChangeStateCompleted () const |
Framework::ChangeStateAsync() の非同期処理の完了をチェックします。 | |
bool | IsCloseSessionCompleted () const |
Framework::CloseSessionAsync() の非同期処理の完了をチェックします。 | |
bool | IsCreateSessionCompleted () const |
セッション作成処理が成功したか確認します。 | |
bool | IsDestroyJointSessionCompleted () const |
DestroyJointSessionAsync の非同期処理の完了をチェックします。 | |
bool | IsHandleErrorCompleted () const |
Framework::HandleErrorAsync() の非同期処理の完了をチェックします。 | |
bool | IsJoinSessionCompleted () const |
セッション参加が成功したか確認します。 | |
bool | IsOpenSessionCompleted () const |
Framework::OpenSessionAsync() の非同期処理の完了をチェックします。 | |
bool | IsRequestSessionInfoCompleted () const |
RequestSessionInfoAsync の非同期処理の完了をチェックします。 | |
bool | IsSessionMigrating () |
セッション移行中であるかを判定します。 | |
bool | IsUpdateSessionSettingCompleted () const |
UpdateSessionSettingAsync の非同期処理の完了をチェックします。 | |
Result | JoinSessionAsync (const session::JoinSessionSetting *pSetting) |
セッション参加処理を行う非同期処理を開始します。 | |
Result | OpenSessionAsync () |
セッションの参加受付を開始します。 | |
Result | ReceiveReliable (StationId *pSrcId, void *pRecvBuf, uint32_t *pRecvDataSize, uint32_t recvBuffSize) |
ReliableProtocol を用いて、データを受信します。 | |
Result | ReceiveUnreliable (StationId *pSrcId, void *pRecvBuf, uint32_t *pRecvDataSize, uint32_t recvBuffSize) |
UnreliableProtocol を用いて、受信したデータをバッファに読み取ります。 | |
void | RegisterInitializeCloneSetting (const InitializeCloneSetting &setting) |
clone の初期化設定項目の登録を行います。 | |
void | RegisterInitializeInetSetting (const InitializeInetSetting &inetSetting) |
inet の初期化設定項目の登録を行います。 | |
void | RegisterInitializeLanSetting (const InitializeLanSetting &setting) |
lan の初期化設定項目の登録を行います。 | |
void | RegisterInitializeLocalSetting (const InitializeLocalSetting &setting) |
local の初期化設定項目の登録を行います。 | |
void | RegisterInitializeSessionSetting (const InitializeSessionSetting &setting) |
session の初期化設定項目の登録を行います。 | |
void | RegisterInitializeSyncSetting (const InitializeSyncSetting &setting) |
sync の初期化設定項目の登録を行います。 | |
void | RegisterInitializeTransportSetting (const InitializeTransportSetting &setting) |
transport の初期化設定項目の登録を行います。 | |
void | RegisterJoinRandomJointSessionSetting (const JoinRandomSessionSetting &setting) |
ジョイントセッションを構築する際に必要な設定項目の登録を行います。 | |
void | RegisterJoinRandomSessionSetting (const JoinRandomSessionSetting &setting) |
セッションを構築する際に必要な設定項目の登録を行います。 | |
void | RegisterStartupNetworkSetting (const StartupNetworkSetting &setting) |
NetworkInterface の初期化設定項目の登録を行います。 | |
void | RegisterStartupSessionSetting (const StartupSessionSetting &setting) |
session のスタートアップ設定項目の登録を行います。 | |
Result | RequestSessionInfoAsync () |
参加中のセッション情報の取得要求を行います。 | |
Result | RequestToChangeDelay (uint32_t newDelay) |
入力遅延の変更依頼を同期データとして設定します。 | |
Result | SendReliable (StationId destId, const void *pData, uint32_t dataSize) |
ReliableProtocol を用いて、データを特定のステーションに向けて送信します。 | |
Result | SendToAllReliable (const void *pData, uint32_t dataSize) |
ReliableProtocol を用いて、データを全ステーションに向けて送信します。 | |
Result | SendToAllUnreliable (const void *pData, uint32_t dataSize) |
UnreliableProtocol を用いて、データを全ステーションに向けて送信します。 | |
Result | SendUnreliable (StationId destId, const void *pData, uint32_t dataSize) |
UnreliableProtocol を用いて、データを特定のステーションに向けて送信します。 | |
Result | SetEmulationParam (const SetEmulationParamArg &emulationParamArg) |
レイテンシエミュレーション、およびパケロスエミュレーションに必要な設定をセットします。Release ビルド時には失敗します。 | |
Result | SetSyncData (uint32_t dataId, const void *pBuffer) |
PiaSync を用いて送信する同期データを設定します。 | |
Result | SyncEnd () |
同期通信を終了します。 | |
Result | SyncEndAlone () |
自分だけ単独で同期通信を終了します。 | |
Result | SyncStart (int32_t usingDataIdBitmap, uint32_t delay, uint32_t sendPeriod) |
PiaSync を用いた同期通信を開始します。 | |
Result | SyncStep () |
同期通信を 1 フレーム進めます。 | |
void | Trace (uint64_t flag) const |
デバッグに有用な情報をプリントします。 | |
void | UnregisterInitializeCloneSetting () |
clone の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeInetSetting () |
inet の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeLanSetting () |
lan の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeLocalSetting () |
local の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeSessionSetting () |
session の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeSyncSetting () |
sync の初期化設定項目の登録解除を行います。 | |
void | UnregisterInitializeTransportSetting () |
transport の初期化設定項目の登録解除を行います。 | |
void | UnregisterJoinRandomJointSessionSetting () |
セッションを構築する際に必要な設定項目の登録解除を行います。 | |
void | UnregisterJoinRandomSessionSetting () |
セッションを構築する際に必要な設定項目の登録解除を行います。 | |
void | UnregisterSettingAll () |
全ての設定項目の登録解除を行います。 | |
void | UnregisterStartupNetworkSetting () |
NetworkInterface の初期化設定項目の登録解除を行います。 | |
void | UnregisterStartupSessionSetting () |
session のスタートアップ設定項目の登録解除を行います。 | |
Result | Update () |
ディスパッチ処理を行います。 | |
Result | UpdateSessionSettingAsync (const session::UpdateSessionSetting *pUpdateSessionSetting) |
指定されたセッションの設定を更新します。 | |
Static Public メソッド | |
static Framework * | GetInstance () |
Framework クラスのインスタンスを得ます(シングルトンパターン)。 事前に CreateInstance() によってインスタンスを作成していない場合は、NULL ポインタが返されます。 この関数はスレッドセーフです。 | |
framework モジュールを使用するためのシングルトンクラスです。
セッション参加処理の進行状態です。
Result nn::pia::framework::Framework::BrowseSessionAsync | ( | const session::SessionSearchCriteria * | pCriteria | ) |
セッション検索を行う非同期処理を開始します。
[in] | pCriteria | セッション検索に必要なパラメータです。 |
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
セッション参加処理の進行状態の状態遷移を開始します。
指定した進行状態に達するまでに必要な処理を行います。
State_SessionJoined の状態で State_SessionStartedUp 、State_SessionLeft を目標状態に指定すると、State_SessionCleanedUp まで遷移します。
[in] | transitionState | 目標とするセッション参加処理の進行状態です。 |
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。現在の進行状態よりも進んだ transitionState を指定した場合などに返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
CloneUpdateResult nn::pia::framework::Framework::CloneUpdate | ( | ) |
PiaClone の更新処理を行います。
1 ゲームフレームに 1 回呼び出す必要があります。
Result nn::pia::framework::Framework::CloseSessionAsync | ( | ) |
セッションの参加締切を行います。
セッション参加を締め切る非同期処理を開始します。 セッションホストであるときに実行できます。 開始した処理は Framework::Update() を定期的に呼び出すことで進行します。 処理の完了は Framework::IsCloseSessionCompleted() でチェックし、結果は Framework::GetCloseSessionResult() で確認できます。 本関数の呼び出し直前にセッションに新規参加しようとしているステーションが非同期処理完了後に参加してくる可能性があるため、 セッション参加締切後、マッチメイクセッションとメッシュの参加者数が一致するまで待ってから非同期処理を完了します。 また、一定期間(15秒)経過しても一致しない場合も非同期処理を完了します。この場合、Framework::GetCloseSessionResult() は ResultNegligibleFault を返します。非同期処理完了後に新規参加してくる可能性がありますので、アプリケーションで適切にハンドリングしてください。
Framework::State nn::pia::framework::Framework::ConvertHandlingTypeToState | ( | Result::HandlingType | handlingType | ) |
ハンドリングタイプを State に変換します。
[in] | handlingType | 変換するハンドリングタイプです。 |
uint32_t nn::pia::framework::Framework::CreateLocalCommunicationId | ( | uint32_t | uniqueId, |
bool | isTrial = false |
||
) | const |
ユニーク ID からローカル通信 ID を作成します。
業務部から割り当てられた 20bit のユニーク ID (タイトル固有の ID)から ローカル通信で使用する 32bit 値 (ローカル通信 ID) を生成します。
業務部からユニーク ID が割り当てられていない場合は、ゲームソフト試作用のユニーク ID ( 0xFF000 ~ 0xFF3FF ) を使用する必要があります。 ローカル通信時に State_SessionInitialized まで遷移済みであれば、有効な値が返ります。
[in] | uniqueId | ユニーク IDです。複数タイトル間で通信したい場合はどちらか片方のユニーク ID を指定する必要があります。 |
[in] | isTrial | ユニーク ID が製品版と体験版で共通だった場合の対処用フラグです。製品版-体験版間での通信を行いたくない場合、 体験版側で true を指定する必要があります。製品版は常に false が指定されるよう注意してください。 |
Result nn::pia::framework::Framework::CreateSessionAsync | ( | const session::CreateSessionSetting * | pSetting | ) |
セッション作成処理を行う非同期処理を開始します。
[in] | pSetting | セッション作成に必要なパラメータです。 |
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::DestroyJointSessionAsync | ( | ) |
ジョイントセッションを解散する非同期処理を開始します。
nn::pia::ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState API を呼び出すタイミングが誤っています。ジョイントセッションホストでないステーションが呼び出した際にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
session::ISessionInfoList* nn::pia::framework::Framework::GetBrowsedSessionInfoList | ( | ) |
BrowseSessionAsync の非同期処理で検索できたセッションのリストを取得します。
Framework::BrowseSessionAsync で開始された非同期処理が完了し、Framework::GetBrowseSessionResult が成功した後、本関数でセッションリストを取得できます。
Result nn::pia::framework::Framework::GetBrowseSessionResult | ( | ) | const |
セッション検索の結果を取得します。
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultCancelled 実行中の非同期処理をキャンセルしました。クリーンアップ処理を実行してください。
ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::GetChangeStateResult | ( | ) | const |
Framework::ChangeStateAsync() の非同期処理の結果を取得します。
Framework::ChangeStateAsync() で開始された非同期処理が完了した後、本関数で結果を取得できます。
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。登録した設定を確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultAlreadyInitialized 既に初期化が完了しています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultSdkError SDK の API 呼び出しに失敗しました。
ResultSdkViewerErrorCodeError SDK の API 呼び出しに失敗しました。nn::pia::Result::GetErrorCode() で取得できるエラーコードは SDK のものになります。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失もしくは締め切られました。クリーンアップ処理を実行してください。
ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
ResultStationConnectionFailed 接続処理に失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultStationConnectionNatTraversalFailedUnknown NAT トラバーサル接続処理に失敗しました。NAT タイプは不明でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEim NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEimRemoteEdm NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEdmRemoteEim NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEdm NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEimRemoteEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEdmRemoteEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalRequestTimeout NAT トラバーサル接続処理に失敗しました。NAT トラバーサル要求がタイムアウトしました。 インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultJoinRequestDenied セッションホストに接続を拒否されました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultMeshIsFull 参加を希望したメッシュが満員で、参加できませんでした。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedNoCandidate リレー経路の候補がいなかったため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedRttLimit リレー経路の RTT 制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedRelayNumLimit リレー経路のリレー依頼数制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedUnknown リレー接続に失敗しました。(詳細不明)クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultInvalidSystemMessage セッションホストから不正な応答が届いたため、処理を中断しました。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultIncompatibleFormat 相手の通信形式が非互換です。異なる ROM (通信互換の無い Ver.の Pia を使用した ROM)と通信しようとした場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
ResultTimeOut タイムアウトで終了しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
clone::CloneProtocol* nn::pia::framework::Framework::GetCloneProtocol | ( | ) |
CloneProtocol を取得します。
Result nn::pia::framework::Framework::GetCloseSessionResult | ( | ) | const |
Framework::CloseSessionAsync() の非同期処理の結果を取得します。
Framework::CloseSessionAsync() で開始された非同期処理が完了した後、本関数で結果を取得できます。
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultNegligibleFault マッチメイクセッションとメッシュの参加人数が一致しない状態で一定時間経過しました。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::GetCreateSessionResult | ( | ) | const |
セッション作成処理の結果を取得します。
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 非同期処理を進行できない内部状態になりました。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
ResultTimeOut タイムアウトで終了しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
uint32_t nn::pia::framework::Framework::GetDelay | ( | ) |
実際に設定されている入力遅延の値を取得します。
Result nn::pia::framework::Framework::GetDestroyJointSessionResult | ( | ) | const |
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::framework::Framework::GetHandleErrorResult | ( | ) | const |
Framework::HandleErrorAsync() の非同期処理の結果を取得します。
Framework::HandleErrorAsync() で開始された非同期処理が完了した後、本関数で結果を取得できます。
InetService* nn::pia::framework::Framework::GetInetService | ( | ) |
InetService インスタンスを取得します。
|
inlinestatic |
Result nn::pia::framework::Framework::GetIsNoDataFrame | ( | bool * | isNoDataFrame | ) |
同期データを取得できないフレームかどうかを取得します。
同期通信中の入力遅延変更機能を使用している場合は、同期データを取得できないフレームがあるため、この関数で同期データを取得できないフレームかを確認する必要があります。 同期通信中の入力遅延変更機能を使用していない場合は、この関数を使用する必要はありません。
[out] | isNoDataFrame | 同期データを取得できないフレームであるかです。 |
ResultInvalidState 呼び出し状態が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::GetJoinSessionResult | ( | ) | const |
セッション参加の結果を取得します。
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 非同期処理が完了していない場合、もしくは開始されていない場合に返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失もしくは締め切られました。
ResultDeniedByParticipants セッション参加者が自分をブラックリストに登録しています。クリーンアップ処理を実行してください。
ResultParticipantInBlockList セッションに自分がブロックリストに登録している参加者がいました。クリーンアップ処理を実行してください。
ResultGameServerMaintenance ゲームサーバーのメンテナンスが行われています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultNatCheckFailed NAT チェックに失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultDnsFailed DNS 解決に失敗しています。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultCancelled 非同期処理がキャンセルされました。クリーンアップ処理を実行してください。
ResultInvalidState 接続可能な状態では無かった場合に返ります。また、非同期処理が完了していない場合、もしくは開始されていない場合にも返ります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultStationConnectionFailed 接続処理に失敗しました。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultStationConnectionNatTraversalFailedUnknown NAT トラバーサル接続処理に失敗しました。NAT タイプは不明でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEim NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEimRemoteEdm NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEdmRemoteEim NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEdm NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEimRemoteEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EIM, 接続失敗した相手の NAT タイプは EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedLocalEdmRemoteEimSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身の NAT タイプは EDM, 接続失敗した相手の NAT タイプは EIM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalFailedBothEdmSamePublicAddress NAT トラバーサル接続処理に失敗しました。自身および接続失敗した相手の NAT タイプは共に EDM でした。また、自身および接続失敗した相手は同じグローバルIPアドレスでした。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultNatTraversalRequestTimeout NAT トラバーサル接続処理に失敗しました。NAT トラバーサル要求がタイムアウトしました。 インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理を実行してください。
ResultJoinRequestDenied セッションホストに接続を拒否されました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultMeshIsFull 参加を希望したメッシュが満員で、参加できませんでした。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedNoCandidate リレー経路の候補がいなかったため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedRttLimit リレー経路の RTT 制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedRelayNumLimit リレー経路のリレー依頼数制限を超えたため、リレー接続に失敗しました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultRelayFailedUnknown リレー接続に失敗しました。(詳細不明)クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultInvalidSystemMessage セッションホストから不正な応答が届いたため、処理を中断しました。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultSessionUserPasswordUnmatch 参加時に指定したユーザーパスワードがセッションに設定されたユーザーパスワードと一致しませんでした。クリーンアップ処理を実行してください。
ResultSessionSystemPasswordUnmatch 参加時に指定したシステムパスワードがセッションに設定されたシステムパスワードと一致しませんでした。クリーンアップ処理を実行してください。
ResultSessionIsClosed 参加を行おうとしたセッションが締め切られていました。クリーンアップ処理を実行してください。アプリケーションで適切にハンドリングしてください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示しても構いませんが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。
ResultHostIsNotFriend 参加を行おうとしたセッションのホストがフレンドではありませんでした。クリーンアップ処理を実行してください。
ResultCompanionStationIsOffline 同行するクライアントがゲームサーバにログインしていない状態でした。クリーンアップ処理を実行してください。
ResultIncompatibleFormat 相手の通信形式が非互換です。異なる ROM (通信互換の無い Ver.
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultSessionWrongState 参加したセッションの状態が異常でした。クリーンアップ処理を実行してください。
ResultNetworkIsFull ネットワークが満員でした。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultTimeOut タイムアウトで終了しました。 local::UdsJoinSessionSetting で設定した暗号鍵が誤っている場合にも返ります。 ローカル通信時にのみ返ります。 クリーンアップ処理を実行してください。
ResultLocalLowerVersion 自分の nn::pia::local::LocalNetworkVersion 、または、アプリケーションバージョンが参加を行おうとしたセッションのものよりも低いです。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultLocalHigherVersion 自分の nn::pia::local::LocalNetworkVersion 、または、アプリケーションバージョンが参加を行おうとしたセッションのものよりも高いです。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
ResultErrorOccurred 内部でエラーが発生しました。ローカル通信時にのみ返ります。クリーンアップ処理を実行してください。
クリーンアップ処理を実行してください。
の Pia を使用した ROM)と通信しようとした場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
uint32_t nn::pia::framework::Framework::GetMaxDelay | ( | ) |
入力遅延の最大値を取得します。
Result nn::pia::framework::Framework::GetOpenSessionResult | ( | ) | const |
Framework::OpenSessionAsync() の非同期処理の結果を取得します。
Framework::OpenSessionAsync() で開始された非同期処理が完了した後、本関数で結果を取得できます。
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
ResultSessionIsNotFound 非同期処理途中で対象のセッションが消失しました。クリーンアップ処理を実行してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
Result nn::pia::framework::Framework::GetRequestSessionInfoResult | ( | ) | const |
RequestSessionInfoAsync の非同期処理の結果を取得します。
RequestSessionInfoAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
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 アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
uint32_t nn::pia::framework::Framework::GetSendDataSizeMax | ( | ) |
Framework::SendUnreliable() 、Framework::SendToAllUnreliable() で一度に送信可能なデータサイズの最大値を取得します。単位はバイトです。
この API 呼び出しで返される値は、アプリケーションによるパケットへの署名の有無に影響されます。
セッション参加後にこの API を呼び出す必要があります。これよりも早いタイミングで呼び出すと、正しい値が返されないことがあります。
const session::ISessionInfo* nn::pia::framework::Framework::GetSessionInfo | ( | ) | const |
参加中のセッション情報を取得します。
セッション情報は自動的には更新されません。セッション情報の更新は RequestSessionInfoAsync で行う必要があります。
|
inline |
セッション参加処理の進行状態を取得します。
transport::Station* nn::pia::framework::Framework::GetStation | ( | StationId | id | ) |
StationId に対応する Station を得ます。
[in] | id | StationId です。 |
Result nn::pia::framework::Framework::GetStationIdList | ( | StationId * | stationIdListBuf, |
uint32_t | stationIdListBufLength, | ||
uint32_t & | stationNum | ||
) |
stationId のリストを取得します。
[out] | stationIdListBuf | stationId のリストを格納するためのバッファです。 |
[in] | stationIdListBufLength | stationIdListBuf のサイズ(リストの要素数)を指定してください。 |
[out] | stationNum | ステーション数が格納されます。 |
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultTemporaryUnavailable セッション移行処理中のため、一時的に API を利用できない状態です。ジョイントセッション機能使用時にのみ返ります。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::GetSyncData | ( | StationId | stationId, |
uint32_t | dataId, | ||
void * | pBuffer | ||
) |
PiaSync を用いて受信する同期データを取得します。
[in] | stationId | 取得する同期データを送信するステーションの StationId です。 |
[in] | dataId | 取得する同期データのデータ ID です。 |
[out] | pBuffer | 同期データを格納するバッファのポインタです。 |
ResultInvalidState この関数を呼び出せる SyncProtocol::State ではありません。または、同期データを取得できないフレームです。または、通信中ではありません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
uint32_t nn::pia::framework::Framework::GetSyncFrameNo | ( | ) |
sync::SyncProtocol::State_Synchronized となってからのフレーム数を取得します。
sync::SyncProtocol::State_Synchronized の間、sync::SyncProtocol::Step に成功すると 1 進みます。
sync::SyncProtocol::State nn::pia::framework::Framework::GetSyncState | ( | ) |
同期通信の進行状態を取得します。
Result nn::pia::framework::Framework::GetUpdateSessionSettingResult | ( | ) | const |
UpdateSessionSettingAsync の非同期処理の結果を取得します。
UpdateSessionSettingAsync で開始された非同期処理が完了した後、本関数で結果を取得できます。
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 サーバーからのログアウト処理を順に実行してください。
切断などが発生した際のエラーハンドリングを行います。
指定した進行状態に達するまでに必要な終了関連処理を行います。
State_SessionJoined の状態で State_SessionStartedUp 、State_SessionLeft を目標状態に指定すると、State_SessionCleanedUp まで遷移します。
[in] | transitionState | 目標とするセッション参加処理の進行状態です。 |
[in] | result | エラーハンドリングの対象となる Result です。エラーハンドリング時以外は、ResultSuccess を指定する必要があります。 |
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないことを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument transitionState に遷移できません。result のハンドリングを行うために終了関連処理が必要な状況で、現在の進行状態よりも進んだ transitionState を指定した場合に返ります。IsSuccess() が真となる Result を引数として与えた場合もこの値が帰ります。
bool nn::pia::framework::Framework::IsBrowseSessionCompleted | ( | ) | const |
セッション検索が成功したか確認します。
true 成功です。
false 失敗です。
bool nn::pia::framework::Framework::IsChangeStateCompleted | ( | ) | const |
Framework::ChangeStateAsync() の非同期処理の完了をチェックします。
Framework::ChangeStateAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::framework::Framework::IsCloseSessionCompleted | ( | ) | const |
Framework::CloseSessionAsync() の非同期処理の完了をチェックします。
Framework::CloseSessionAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::framework::Framework::IsCreateSessionCompleted | ( | ) | const |
セッション作成処理が成功したか確認します。
true 成功です。
false 失敗です。
bool nn::pia::framework::Framework::IsDestroyJointSessionCompleted | ( | ) | const |
DestroyJointSessionAsync の非同期処理の完了をチェックします。
true 成功です。
false 失敗です。
bool nn::pia::framework::Framework::IsHandleErrorCompleted | ( | ) | const |
Framework::HandleErrorAsync() の非同期処理の完了をチェックします。
Framework::HandleErrorAsync() で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::framework::Framework::IsJoinSessionCompleted | ( | ) | const |
セッション参加が成功したか確認します。
true 成功です。
false 失敗です。
bool nn::pia::framework::Framework::IsOpenSessionCompleted | ( | ) | const |
Framework::OpenSessionAsync() の非同期処理の完了をチェックします。
Framework::OpenSessionAsync() で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::framework::Framework::IsRequestSessionInfoCompleted | ( | ) | const |
RequestSessionInfoAsync の非同期処理の完了をチェックします。
RequestSessionInfoAsync で開始された非同期処理は、本関数で完了をチェックできます。
bool nn::pia::framework::Framework::IsSessionMigrating | ( | ) |
セッション移行中であるかを判定します。
bool nn::pia::framework::Framework::IsUpdateSessionSettingCompleted | ( | ) | const |
UpdateSessionSettingAsync の非同期処理の完了をチェックします。
UpdateSessionSettingAsync で開始された非同期処理は、本関数で完了をチェックできます。
Result nn::pia::framework::Framework::JoinSessionAsync | ( | const session::JoinSessionSetting * | pSetting | ) |
セッション参加処理を行う非同期処理を開始します。
[in] | pSetting | セッション参加に必要なパラメータです。 |
ResultInvalidArgument 非同期処理開始時に渡した引数の設定内容が想定外です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、Startup が呼び出されていること、既に通信中でないか確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
Result nn::pia::framework::Framework::OpenSessionAsync | ( | ) |
セッションの参加受付を開始します。
セッション参加受付を開始する非同期処理を開始します。 セッションホストであるときに実行できます。 開始した処理は Framework::Update() を定期的に呼び出すことで進行します。 処理の完了は Framework::IsOpenSessionCompleted でチェックし、結果は Framework::GetOpenSessionResult で確認できます。
Result nn::pia::framework::Framework::ReceiveReliable | ( | StationId * | pSrcId, |
void * | pRecvBuf, | ||
uint32_t * | pRecvDataSize, | ||
uint32_t | recvBuffSize | ||
) |
ReliableProtocol を用いて、データを受信します。
framework::Framework::Update() のタイミングで受信したパケットは解析され、内部のバッファに蓄積されていきます。 SendReliable() で分割されたデータがすべて届いていることが確認できているデータはこの関数で結合され取得できます。 内部バッファもこのタイミングで解放され、次の受信のために使われます。
[out] | pSrcId | 受信データの送信元の StationId を書き込むバッファへのポインタです。 |
[out] | pRecvBuf | 受信データを書き込むバッファへのポインタです。 |
[out] | pRecvDataSize | 受信データのサイズを書き込むバッファへのポインタです。 |
[in] | recvBuffSize | 受信データを書き込むバッファのサイズ(バイト)です。 |
ResultInvalidState 初期化されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNotInCommunication 通信中でありません。セッションに参加していない状態と同じです。アプリケーションで適切にハンドリングしてください。
ResultNoData 受信したデータはありません。アプリケーションで適切にハンドリングしてください。
ResultBrokenData 受信したデータが大きすぎて受信バッファに入りきらないか渡されたバッファに書ききれません。セッションのスタートアップからやり直す必要があります。 この Result はチートなどによって送信側が不正なデータを送ってきたときに発生する可能性があるため実行時にハンドリングする必要がありますが、 送信側の挙動が正常な場合はこの Result が返らないようにプログラムを修正する必要があります。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::ReceiveUnreliable | ( | StationId * | pSrcId, |
void * | pRecvBuf, | ||
uint32_t * | pRecvDataSize, | ||
uint32_t | recvBuffSize | ||
) |
UnreliableProtocol を用いて、受信したデータをバッファに読み取ります。
データを受信します。ただし、この関数呼び出しが無線モジュールの受信処理実行のトリガーとなっている わけではありません。 無線モジュールからパケットを受信する処理は、 Pia 内部の受信スレッドによって定期的に実行されています。 この受信スレッドが受信したパケットは、 PiaTransport のディスパッチ処理が実行されるタイミングで パケット解析処理用バッファにコピーされ、データが復元されます。 この関数は、このようにして復元されたデータをアプリケーション側で用意したバッファにコピーする処理を実行します。
[out] | pSrcId | 読み取ったデータの送信元 StationId が書き込まれます。 |
[out] | pRecvBuf | データの読み取り先バッファです。 |
[out] | pRecvDataSize | 実際に読み取ることのできたデータサイズが書き込まれます。単位はバイトです。 |
[in] | recvBuffSize | データの読み取り先バッファのサイズを指定します。単位はバイトです。 |
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState UnreliableProtocol::Initialize() が呼ばれていなかったり、session のセットアップが完了していない可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultBufferShortage 読み取りバッファのサイズが不足しています。 recvBuffSize で指定したサイズを上回る大きさのデータが到着していた場合に返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNoData 受信バッファが空っぽで、読み取ることのできるデータがありませんでした。アプリケーションで適切にハンドリングしてください。
ResultNotInCommunication 通信が可能な状態ではありません。アプリケーションで適切にハンドリングしてください。
ResultTemporaryUnavailable ジョイントセッション処理が進行中のため、一時的に API を利用できない状態です。アプリケーションで適切にハンドリングしてください。
void nn::pia::framework::Framework::RegisterInitializeCloneSetting | ( | const InitializeCloneSetting & | setting | ) |
clone の初期化設定項目の登録を行います。
setting.isAutoInitialize を true としてこのメソッドを呼ぶと、自動で clone の初期化を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeInetSetting | ( | const InitializeInetSetting & | inetSetting | ) |
inet の初期化設定項目の登録を行います。
[in] | inetSetting | setting 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeLanSetting | ( | const InitializeLanSetting & | setting | ) |
lan の初期化設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeLocalSetting | ( | const InitializeLocalSetting & | setting | ) |
local の初期化設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeSessionSetting | ( | const InitializeSessionSetting & | setting | ) |
session の初期化設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeSyncSetting | ( | const InitializeSyncSetting & | setting | ) |
sync の初期化設定項目の登録を行います。
setting.isAutoInitialize を true としてこのメソッドを呼ぶと、自動で sync の初期化を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterInitializeTransportSetting | ( | const InitializeTransportSetting & | setting | ) |
transport の初期化設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterJoinRandomJointSessionSetting | ( | const JoinRandomSessionSetting & | setting | ) |
ジョイントセッションを構築する際に必要な設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterJoinRandomSessionSetting | ( | const JoinRandomSessionSetting & | setting | ) |
セッションを構築する際に必要な設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterStartupNetworkSetting | ( | const StartupNetworkSetting & | setting | ) |
NetworkInterface の初期化設定項目の登録を行います。
setting.isAutoInitialize を true としてこのメソッドを呼ぶと、自動的に AC の初期化を行います。
[in] | setting | 登録する設定項目です。 |
void nn::pia::framework::Framework::RegisterStartupSessionSetting | ( | const StartupSessionSetting & | setting | ) |
session のスタートアップ設定項目の登録を行います。
[in] | setting | 登録する設定項目です。 |
Result nn::pia::framework::Framework::RequestSessionInfoAsync | ( | ) |
参加中のセッション情報の取得要求を行います。
参加中のセッション情報の取得要求を行う非同期処理を開始します。 開始した処理は framework::Framework::Update() を定期的に呼び出すことで進行します。 処理の完了は IsRequestSessionInfoCompleted でチェックし、結果は GetRequestSessionInfoResult で確認できます。
インターネット通信の場合、ゲームサーバーアクセスを行います。1 分間に 10 回以上の呼び出しを行ってはいけません。
Result nn::pia::framework::Framework::RequestToChangeDelay | ( | uint32_t | newDelay | ) |
入力遅延の変更依頼を同期データとして設定します。
依頼する入力遅延は、初期化時に sync::SyncProtocol::FrameDelayMax 以下の値である必要があります。 依頼する入力遅延として 0 を指定した場合は、変更依頼を行わないものとして扱われます。 この関数が成功しても、依頼した入力遅延の値に変更されることは保証されません。 同じフレームで複数の依頼を受け取った場合は、依頼された入力遅延の値の最大値が優先されます。 入力遅延の変更依頼を同期データとして受け取った時点で、すでに他の依頼による入力遅延の変更中であった場合は、依頼は無視されます。
[in] | newDelay | 依頼する入力遅延の値です。 |
ResultInvalidState 呼び出し状態が不正です。または、通信中ではありません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultAlreadyExists 既に設定されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::SendReliable | ( | StationId | destId, |
const void * | pData, | ||
uint32_t | dataSize | ||
) |
ReliableProtocol を用いて、データを特定のステーションに向けて送信します。
この関数でセットされた送信データは、パケットに対して適切なサイズに分割され内部のバッファに保持されます。 その後の framework::Framework::Update() の中で順次パケットが作成され送信されていきます。 送信してからしばらくたっても到達が確認できないデータは再送されます。 再送までの時間は RTT に応じて自動的に調整されます。 到達が確認できたデータはバッファから削除され、バッファはその後のデータ送信のために使う事ができるようになります。
[in] | destId | 送信先の StationId です。 |
[in] | pData | 送信するデータのアドレスです。 |
[in] | dataSize | 送信するデータのサイズ(バイト)です。 |
ResultInvalidState ReliableProtocol が初期化されていないか、session のセットアップが完了していない可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNotInCommunication 指定された送信先と通信中ではありません。自分か指定した相手がセッション内に存在しません。アプリケーションで適切にハンドリングしてください。
ResultBufferIsFull 送信バッファに空きがありません。頻発する場合は、 Initialize() で指定する送信バッファのデータ数を増やすことを検討してください。アプリケーションで適切にハンドリングしてください。
ResultTemporaryUnavailable ジョイントセッション処理が進行中のため、一時的に API を利用できない状態です。アプリケーションで適切にハンドリングしてください。
ResultNotFound 指定された送信先が見つかりません。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::SendToAllReliable | ( | const void * | pData, |
uint32_t | dataSize | ||
) |
ReliableProtocol を用いて、データを全ステーションに向けて送信します。
この関数でセットされた送信データは、パケットに対して適切なサイズに分割され内部のバッファに保持されます。 その後の framework::Framework::Update() の中で順次パケットが作成され送信されていきます。 送信してからしばらくたっても到達が確認できないデータは再送されます。 再送までの時間は RTT に応じて自動的に調整されます。 到達が確認できたデータはバッファから削除され、バッファはその後のデータ送信のために使う事ができるようになります。
[in] | pData | 送信するデータのアドレスです。 |
[in] | dataSize | 送信するデータのサイズ(バイト)です。 |
ResultInvalidState ReliableProtocol が初期化されていないか、session のセットアップが完了していない可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNotInCommunication 指定された送信先と通信中ではありません。自分か指定した相手がセッション内に存在しません。アプリケーションで適切にハンドリングしてください。
ResultBufferIsFull 送信バッファに空きがありません。頻発する場合は、 Initialize() で指定する送信バッファのデータ数を増やすことを検討してください。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::SendToAllUnreliable | ( | const void * | pData, |
uint32_t | dataSize | ||
) |
UnreliableProtocol を用いて、データを全ステーションに向けて送信します。
データを送信します。ただし、この関数を呼び出しただけでは実際のデータ送信は行われません。 この関数は、アプリケーションが渡したデータを Pia 内部のパケット生成処理用バッファにコピーします。 その後、 PiaTransport のディスパッチ処理が実行されることで、パケット生成処理用バッファにコピー されていたデータ群がパケットにまとめられ、 Pia 内部の送信スレッドに渡されます。実際の送信処理は、 この送信スレッドが定期的にパケットを無線モジュールに渡すことで行われます。
[in] | pData | 送信したいデータの先頭を指すポインタ。 |
[in] | dataSize | 送信データサイズ。単位はバイトです。 GetSendDataSizeMax() が返す値を超過してはいけません。 |
ResultInvalidArgument 引数に誤りがあります。送信データサイズが過大であった場合にも、このエラーが返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState UnreliableProtocol::Initialize() が呼ばれていない可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNotInCommunication 通信が可能な状態ではありません。アプリケーションで適切にハンドリングしてください。
ResultTemporaryUnavailable ジョイントセッション処理が進行中のため、一時的に API を利用できない状態です。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::SendUnreliable | ( | StationId | destId, |
const void * | pData, | ||
uint32_t | dataSize | ||
) |
UnreliableProtocol を用いて、データを特定のステーションに向けて送信します。
データを送信します。ただし、この関数を呼び出しただけでは実際のデータ送信は行われません。 この関数は、アプリケーションが渡したデータを Pia 内部のパケット生成処理用バッファにコピーします。 その後、 PiaTransport のディスパッチ処理が実行されることで、パケット生成処理用バッファにコピー されていたデータ群がパケットにまとめられ、 Pia 内部の送信スレッドに渡されます。実際の送信処理は、 この送信スレッドが定期的にパケットを無線モジュールに渡すことで行われます。
[in] | destId | 送信先の StationId 。 |
[in] | pData | 送信したいデータの先頭を指すポインタ。 |
[in] | dataSize | 送信データサイズ。単位はバイトです。 GetSendDataSizeMax() が返す値を超過してはいけません。 |
ResultInvalidArgument 引数に誤りがあります。送信データサイズが過大であった場合にも、このエラーが返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidState UnreliableProtocol::Initialize() が呼ばれていなかったり、session のセットアップが完了していない可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultNotInCommunication 通信が可能な状態ではありません。アプリケーションで適切にハンドリングしてください。
ResultTemporaryUnavailable ジョイントセッション処理が進行中のため、一時的に API を利用できない状態です。アプリケーションで適切にハンドリングしてください。
ResultNotFound 指定された送信先が見つかりません。
Result nn::pia::framework::Framework::SetEmulationParam | ( | const SetEmulationParamArg & | emulationParamArg | ) |
レイテンシエミュレーション、およびパケロスエミュレーションに必要な設定をセットします。Release ビルド時には失敗します。
[in] | emulationParamArg | レイテンシエミュレーション、およびパケロスエミュレーション用の設定です。 |
ResultInvalidState Pia の初期化が行われていない可能性があります。または Release ビルドです。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数が誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::SetSyncData | ( | uint32_t | dataId, |
const void * | pBuffer | ||
) |
PiaSync を用いて送信する同期データを設定します。
[in] | dataId | 設定する同期データの ID です。 |
[in] | pBuffer | 設定する同期データです。 |
ResultInvalidState この関数を呼び出せる SyncProtocol::State ではありません。または、通信中ではありません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultAlreadyExists 同期データは既に設定されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::SyncEnd | ( | ) |
同期通信を終了します。
Result nn::pia::framework::Framework::SyncEndAlone | ( | ) |
自分だけ単独で同期通信を終了します。
Result nn::pia::framework::Framework::SyncStart | ( | int32_t | usingDataIdBitmap, |
uint32_t | delay, | ||
uint32_t | sendPeriod | ||
) |
PiaSync を用いた同期通信を開始します。
[in] | usingDataIdBitmap | SyncProtocol::Initialize() に渡した Setting 構造体で正の値のサイズを設定した同期データの内、どの同期データを自分の送信対象にするか設定します。 |
[in] | delay | 入力遅延を指定します。 |
[in] | sendPeriod | 送信間隔(SyncProtocol::Step() を何回呼ぶごとに送信処理を行うか)を指定します。 |
ResultInvalidState この関数を呼び出せる SyncProtocol::State ではありません。または、通信中ではありません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultInvalidArgument 引数の指定が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
Result nn::pia::framework::Framework::SyncStep | ( | ) |
同期通信を 1 フレーム進めます。
ResultInvalidState 通信中ではありません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultDataIsNotArrivedYet 同期データが他のステーションから届いていないためフレームを進めることができませんでした。framework::Framework::Update() を呼んだあと再度この関数を呼ぶ必要があります。アプリケーションで適切にハンドリングしてください。
ResultDataIsNotSet 自分が送信する同期データがまだ設定されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultTemporaryUnavailable 単独同期終了処理中です。
void nn::pia::framework::Framework::Trace | ( | uint64_t | flag | ) | const |
デバッグに有用な情報をプリントします。
[in] | flag | トレースフラグの論理和。詳細は common::TraceFlag 型を参照してください。 |
Result nn::pia::framework::Framework::Update | ( | ) |
ディスパッチ処理を行います。
通常、1 ゲームフレームに 1 回または 2 回の頻度で呼び出します。アクションゲームでは通信遅延を低減するために、ゲームの通信処理の前後に 1 回ずつ、計 2 回 Update() を呼び出すことを推奨します。 前後で呼び出すことで直前の受信をゲーム処理に反映させることができ、ゲーム処理の結果を直後に送信することができます。 なお、非同期処理中は Update() 失敗時のエラーハンドリングは不要です。 InetService(NexServiceなど)のディスパッチの後、Piaのディスパッチが呼ばれます。 isAutoInitializeAndLogin を有効にして初期化した場合、Framework::State_LoggedIn 以上の状態の間、InetService の接続確認(nex::NgsFacade::IsConnectedなど)が行われます。
ResultSessionConnectionIsLost メッシュから切断されました。LeaveSessionAsync を呼び出した後、クリーンアップ処理を実行してください。
ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
ResultInvalidState CreateInstance() が呼ばれていない、もしくは DestroyInstance() を呼んだ可能性があります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
ResultGameServerProcessAborted ゲームサーバーに関する処理が異常終了しました。セッション離脱処理、クリーンアップ処理、NEX サーバーからのログアウト処理を順に実行してください。
ResultNexInternalError NEX の内部エラーです。nn::pia::Result::GetErrorCode() で取得できるエラーコードは NEX のものになります。エラーコードリストの NEX の項目をご確認ください。クリーンアップ処理、NEX サーバーからのログアウト処理、ネットワークのシャットダウン処理、終了処理を順に実行してください。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。アプリケーションで適切にハンドリングしてください。
Result nn::pia::framework::Framework::UpdateSessionSettingAsync | ( | const session::UpdateSessionSetting * | pUpdateSessionSetting | ) |
指定されたセッションの設定を更新します。
非同期に指定したセッションの設定を更新します。 セッションホストであるときに実行できます。 処理の完了は IsUpdateSessionSettingCompleted でチェックし、結果は GetUpdateSessionSettingResult で確認できます。
[in] | pUpdateSessionSetting | 変更する設定をまとめる UpdateSessionSetting 派生クラスのポインタ |
nn::pia::ResultInvalidState 呼び出し時に適切な状態ではありませんでした。他の非同期処理が行われていないこと、ホストであることを確認してください。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
nn::pia::ResultNetworkConnectionIsLost ネットワークが使用できない状態になっています。インターネットマッチメイク時や LAN マッチメイク時には、無線スイッチOffや、アクセスポイントの障害、ゲームサーバーとの接続の切断などの原因が考えられます。インターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultWifiOff 無線がオフになっています。ローカル通信時にのみ返りますインターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。
nn::pia::ResultSleep スリープ状態です。ローカル通信時にのみ返りますインターネット通信でこのエラーが発生した場合は、ネットワークエラーコードに変換し、エラー・EULA アプレットで表示してください。ですが、ローカル通信時にはエラー・EULA アプレットでエラーコード付きのエラー表示は行わないでください。クリーンアップ処理、NEX サーバーからのログアウト処理(インターネット通信時限定)、ネットワークのシャットダウン処理を順に実行してください。