CTR-Pia  5.4.3
Game Communication Engine
 全て クラス ネームスペース 関数 変数 型定義 列挙型 列挙型の値 ページ
クラス nn::pia::local::LocalFacade

ローカルネットワークを扱うためのクラスです。 [詳細]

+ nn::pia::local::LocalFacadeに対する継承グラフ

Public メソッド

uint32_t CreateLocalCommunicationId (uint32_t uniqueId, bool isTrial=false) const
 ユニーク ID からローカル通信 ID を作成します。
 
void Finalize ()
 終了処理です。
 
Result GetApplicationDataFromBeacon (void *pBuffer, uint32_t *pDataSize, uint32_t bufferSize) const
 ビーコンに設定されているデータを取得します。
 
Result GetApplicationDataSizeFromBeacon (uint32_t *pDataSize) const
 ビーコンに設定されているデータのサイズを取得します。
 
DisconnectReason GetDisconnectReason ()
 ネットワークから切断された理由を取得します。
 
uint8_t GetLinkLevel () const
 リンクレベルを取得します。
 
uint8_t GetNetworkChannel () const
 使用中の IEEE 802.11b/g 無線チャンネルを取得します。
 
Result GetStationInfo (LocalStationInfo *pLocalStationInfo, const common::StationAddress &address) const
 指定したステーションの情報を取得します。
 
Result Initialize (const LocalNetworkSetting &setting)
 インスタンスを初期化します。 BeginSetup()EndSetup() 間で呼び出す必要があります。
 
bool IsDuringHostMigration () const
 ローカルホストマイグレーション処理中であるかを取得します。
 
virtual void Trace (uint64_t flag) const
 デバッグに有用な情報をプリントします。
 

Static Public メソッド

static Result CreateInstance ()
 LocalFacade クラスのインスタンスを作成します(シングルトンパターン)。
 
static void DestroyInstance ()
 LocalFacade クラスのインスタンスを破棄します(シングルトンパターン)。
 
static LocalFacadeGetInstance ()
 LocalFacade クラスのインスタンスを得ます(シングルトンパターン)。 事前に Initialize による初期化を済ませていない場合は、 NULLポインタが返されます。
 

説明

ローカルネットワークを扱うためのクラスです。

関数

static Result nn::pia::local::LocalFacade::CreateInstance ( )
static

LocalFacade クラスのインスタンスを作成します(シングルトンパターン)。

戻り値
インスタンスの作成に成功すれば、成功の Result が返されます。
返るエラーの一覧:

ResultNotInitialized local モジュールが未初期化です。

ResultInvalidState インスタンスを作成するタイミングが誤っています。

ResultAlreadyExists 既にインスタンスは作成されています。

uint32_t nn::pia::local::LocalFacade::CreateLocalCommunicationId ( uint32_t  uniqueId,
bool  isTrial = false 
) const

ユニーク ID からローカル通信 ID を作成します。

業務部から割り当てられた 20bit のユニーク ID (タイトル固有の ID)から ローカル通信で使用する 32bit 値 (ローカル通信 ID) を生成します。
業務部からユニーク ID が割り当てられていない場合は、ゲームソフト試作用のユニーク ID ( 0xFF000 ~ 0xFF3FF ) を使用する必要があります。 transport::Transport::Initialize() を呼び出してから transport::Transport::Finalize() を呼び出すまでの間、有効な値が返ります。

注意
製品版では必ず業務部から割り当てられた ユニーク ID を使用する必要があります。
引数
[in]uniqueIdユニーク IDです。複数タイトル間で通信したい場合はどちらか片方のユニーク ID を指定する必要があります。
[in]isTrialユニーク ID が製品版と体験版で共通だった場合の対処用フラグです。製品版-体験版間での通信を行いたくない場合、 体験版側で true を指定する必要があります。製品版は常に false が指定されるよう注意してください。
戻り値
作成されたローカル通信 ID が返ります。
void nn::pia::local::LocalFacade::Finalize ( )

終了処理です。

参照
Initialize
Result nn::pia::local::LocalFacade::GetApplicationDataFromBeacon ( void *  pBuffer,
uint32_t *  pDataSize,
uint32_t  bufferSize 
) const

ビーコンに設定されているデータを取得します。

注意
この API は、ローカルネットワークに接続中の端末が呼び出すことを想定しています。
この API はローカルホストマイグレーション処理が行われている最中には正しい結果が得られない場合があります。 ホストマイグレーション処理中(LocalFacade::IsDuringHostMigration が true を返す状況)は実行しないよう注意してください。
引数
[out]pBufferデータを書き込むためのバッファ。
[out]pDataSize取得したデータの長さ。
[in]bufferSizeデータを書き込むためのバッファのサイズ。
戻り値
正常に処理が完了した場合、成功の Result が返ります。
返るエラーの一覧:

ResultNotInitialized 初期化されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidState transport::Transport::Initialize() の呼び出しから transport::Transport::Finalize() の呼び出しまでの間に呼び出す必要があります。または、接続していないか、ホストマイグレーション処理中ですプログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidConnection 無線オフモードに遷移しました。クリーンアップ処理を実行してください。

ResultNotInCommunication 通信できない状態です。その内、切断検知されるか、またはホストマイグレーションが開始されます。ホストマイグレーション完了後に呼び出すことで成功する可能性があります。

Result nn::pia::local::LocalFacade::GetApplicationDataSizeFromBeacon ( uint32_t *  pDataSize) const

ビーコンに設定されているデータのサイズを取得します。

注意
この API は、ローカルネットワークに接続中の端末が呼び出すことを想定しています。
この API はローカルホストマイグレーション処理が行われている最中には正しい結果が得られない場合があります。 ホストマイグレーション処理中(LocalFacade::IsDuringHostMigration が true を返す状況)は実行しないよう注意してください。
引数
[out]pDataSizeビーコンに設定されているデータのサイズ。
戻り値
正常に処理が完了した場合、成功の Result が返ります。
返るエラーの一覧:

ResultNotInitialized 初期化されていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidState transport::Transport::Initialize() の呼び出しから transport::Transport::Finalize() の呼び出しまでの間に呼び出す必要があります。または、接続していないか、ホストマイグレーション処理中ですプログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidConnection 無線オフモードに遷移しました。クリーンアップ処理を実行してください。

ResultNotInCommunication 通信できない状態です。その内、切断検知されるか、またはホストマイグレーションが開始されます。ホストマイグレーション完了後に呼び出すことで成功する可能性があります。

DisconnectReason nn::pia::local::LocalFacade::GetDisconnectReason ( )

ネットワークから切断された理由を取得します。

Startup 時、Cleanup 時に DisconnectReason_None にリセットされます。

通信エラーの検知には、本関数ではなく session::Session::CheckConnectionError() を使用する必要があります。

戻り値
ネットワークから切断された理由です。
static LocalFacade* nn::pia::local::LocalFacade::GetInstance ( void  )
inlinestatic

LocalFacade クラスのインスタンスを得ます(シングルトンパターン)。 事前に Initialize による初期化を済ませていない場合は、 NULLポインタが返されます。

戻り値
LocalFacade インスタンスへのポインタ。
uint8_t nn::pia::local::LocalFacade::GetLinkLevel ( ) const

リンクレベルを取得します。

リンクレベルは、0~3 の 4 段階あり、0:非常に通信品質が悪い、もしくは通信が成立していない、 1:通信品質が悪い、2:通信品質があまり良くない、3:通信品質がよい という状態を表します。

注意
この API はローカルホストマイグレーション処理が行われている最中には正しい結果が得られない場合があります。 ホストマイグレーション処理中(LocalFacade::IsDuringHostMigration が true を返す状況)は実行しないよう注意してください。
戻り値
現在接続中のネットワークの通信品質を返します。接続していない場合は 0 が返ります。
uint8_t nn::pia::local::LocalFacade::GetNetworkChannel ( ) const

使用中の IEEE 802.11b/g 無線チャンネルを取得します。

注意
この API はローカルホストマイグレーション処理が行われている最中には正しい結果が得られない場合があります。 ホストマイグレーション処理中(LocalFacade::IsDuringHostMigration が true を返す状況)は実行しないよう注意してください。
戻り値
現在のチャンネルが返ります。接続していない場合や取得に失敗した場合は 0 が返ります。
Result nn::pia::local::LocalFacade::GetStationInfo ( LocalStationInfo pLocalStationInfo,
const common::StationAddress address 
) const

指定したステーションの情報を取得します。

引数
[out]pLocalStationInfo取得したステーション情報を格納するバッファです。
[in]address情報を取得したいステーションのアドレスです。
戻り値
正常に情報を取得できた場合、成功の Result が返ります。
返るエラーの一覧:

ResultNotInitialized LocalFacade がスタートアップされていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultNotFound 対象のステーションが見つかりませんでした。すでに切断されている可能性があります。

ResultInvalidConnection 無線オフモードに遷移しました。クリーンアップ処理を実行してください。

Result nn::pia::local::LocalFacade::Initialize ( const LocalNetworkSetting setting)

インスタンスを初期化します。 BeginSetup()EndSetup() 間で呼び出す必要があります。

注意
LocalFacade の受信バッファとしてデバイスメモリを使用することはできないため、 common::Initialize() にデバイスメモリが渡されていた場合、アサート停止します。
引数
[in]setting各種設定情報です。
戻り値
成功すれば、IsSuccess() が true を返す Result が返されます。この関数がエラーを返さないようにアプリケーションを実装する必要があります。
返るエラーの一覧:

ResultAlreadyInitialized 既に初期化されています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultInvalidArgument 引数が不正です。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

参照
Finalize
bool nn::pia::local::LocalFacade::IsDuringHostMigration ( ) const

ローカルホストマイグレーション処理中であるかを取得します。

戻り値
ローカルホストマイグレーション処理中であるかが返ります。
virtual void nn::pia::local::LocalFacade::Trace ( uint64_t  flag) const
virtual

デバッグに有用な情報をプリントします。

引数
[in]flagトレースフラグの論理和。詳細は TraceFlag 型を参照してください。