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

複数の Station インスタンスを統括するクラスです。 [詳細]

+ nn::pia::transport::StationManagerに対する継承グラフ

構成

class  ConstIterator
 セッションに参加している Station を参照するためのイテレータです( const 版)。 [詳細]
 
class  Iterator
 セッションに参加している Station を参照するためのイテレータです(非 const 版)。 [詳細]
 

Public メソッド

Iterator Begin (void)
 Station インスタンスのイテレータを返します(非 const 版)。
 
ConstIterator Begin (void) const
 Station インスタンスのイテレータを返します( const 版)。
 
Iterator End (void)
 Station インスタンスのイテレータを返します(非 const 版)。
 
ConstIterator End (void) const
 Station インスタンスのイテレータを返します( const 版)。
 
StationGetLocalStation (void)
 ローカルステーションを取得します(非 const 版)。
 
const StationGetLocalStation (void) const
 ローカルステーションを取得します( const 版)。
 
StationGetStation (StationId id)
 StationId に対応する Station を得ます(非 const 版)。
 
const StationGetStation (StationId id) const
 StationId に対応する Station を得ます( const 版)。
 
StationGetStation (const common::StationAddress &addr)
 StationAddress に対応する Station を得ます(非 const 版)。
 
const StationGetStation (const common::StationAddress &addr) const
 StationAddress に対応する Station を得ます( const 版)。
 
Result GetStationAddress (common::StationAddress *pAddr, StationId id) const
 StationId に対応する Station の StationAddress を得ます。
 
StationGetStationByAddress (const common::InetAddress &addr)
 インターネットアドレスに対応する Station を得ます(非 const 版)。
 
const StationGetStationByAddress (const common::InetAddress &addr) const
 インターネットアドレスに対応する Station を得ます( const 版)。
 
virtual void Trace (uint64_t flag) const
 デバッグに有用な情報をプリントします。
 

Static Public メソッド

static StationManagerGetInstance (void)
 StationManager クラスのインスタンスを得ます(シングルトンパターン) 事前に CreateInstance() によってインスタンスを作成していない場合は、 NULL ポインタが返されます。 この関数はスレッドセーフです。
 

説明

複数の Station インスタンスを統括するクラスです。

StationManager クラスのインスタンスは、 Transport クラスによって構築/破棄されます。 ですので、アプリケーションプログラムが StationManager クラスの CreateInstance() や DestroyInstance() を呼び出す必要はありません。

関数

Iterator nn::pia::transport::StationManager::Begin ( void  )
inline

Station インスタンスのイテレータを返します(非 const 版)。

戻り値
StationManager が管理している Station インスタンス群の 先頭にある要素のイテレータを返します。
参照
End
ConstIterator nn::pia::transport::StationManager::Begin ( void  ) const
inline

Station インスタンスのイテレータを返します( const 版)。

戻り値
StationManager が管理している Station インスタンス群の 先頭にある要素のイテレータを返します。
参照
End
Iterator nn::pia::transport::StationManager::End ( void  )
inline

Station インスタンスのイテレータを返します(非 const 版)。

戻り値
StationManager が管理している Station インスタンス群の 末尾の要素の次に対応するイテレータを返します。
参照
Begin
ConstIterator nn::pia::transport::StationManager::End ( void  ) const
inline

Station インスタンスのイテレータを返します( const 版)。

戻り値
StationManager が管理している Station インスタンス群の 末尾の要素の次に対応するイテレータを返します。
参照
Begin
static StationManager* nn::pia::transport::StationManager::GetInstance ( void  )
inlinestatic

StationManager クラスのインスタンスを得ます(シングルトンパターン) 事前に CreateInstance() によってインスタンスを作成していない場合は、 NULL ポインタが返されます。 この関数はスレッドセーフです。

戻り値
インスタンスへのポインタ。
参照
CreateInstance, DestroyInstance
Station* nn::pia::transport::StationManager::GetLocalStation ( void  )
inline

ローカルステーションを取得します(非 const 版)。

この関数はスレッドセーフです。

戻り値
ローカルステーションが存在すれば、有効なポインタが返ります。存在していなければ、 NULL ポインタが返されます。
const Station* nn::pia::transport::StationManager::GetLocalStation ( void  ) const
inline

ローカルステーションを取得します( const 版)。

この関数はスレッドセーフです。

戻り値
ローカルステーションが存在すれば、有効なポインタが返ります。存在していなければ、 NULL ポインタが返されます。
Station* nn::pia::transport::StationManager::GetStation ( StationId  id)

StationId に対応する Station を得ます(非 const 版)。

引数
[in]idStationId 。
戻り値
指定した StationId に対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなかったり、StationId が無効の場合は NULL ポインタが返ります。
参照
GetStationByAddress
const Station* nn::pia::transport::StationManager::GetStation ( StationId  id) const

StationId に対応する Station を得ます( const 版)。

引数
[in]idStationId 。
戻り値
指定した StationId に対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなかったり、StationId が無効の場合は NULL ポインタが返ります。
参照
GetStationByAddress
Station* nn::pia::transport::StationManager::GetStation ( const common::StationAddress addr)

StationAddress に対応する Station を得ます(非 const 版)。

引数
[in]addrステーションアドレス。
戻り値
指定したステーションアドレスに対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなければ、 NULL ポインタが返ります。
参照
GetStationByAddress
const Station* nn::pia::transport::StationManager::GetStation ( const common::StationAddress addr) const

StationAddress に対応する Station を得ます( const 版)。

引数
[in]addrステーションアドレス。
戻り値
指定したステーションアドレスに対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなければ、 NULL ポインタが返ります。
参照
GetStationByAddress
Result nn::pia::transport::StationManager::GetStationAddress ( common::StationAddress pAddr,
StationId  id 
) const

StationId に対応する Station の StationAddress を得ます。

引数
[out]pAddr書き込み先の StationAddress インスタンスを指すポインタ。
[in]idStationId 。
戻り値
成功すれば、 IsSuccess() が true を返す Result が返されます。
返るエラーの一覧:

ResultInvalidArgument 引数に誤りがあります。StationId が無効だった場合もこの Result が返されます。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。

ResultNotFound 引数で指定した Station が見つからなかったことを示します。アプリケーションで適切にハンドリングしてください。

Station* nn::pia::transport::StationManager::GetStationByAddress ( const common::InetAddress addr)

インターネットアドレスに対応する Station を得ます(非 const 版)。

引数
[in]addrインターネットアドレス。
戻り値
指定したインターネットアドレスに対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなければ、 NULL ポインタが返ります。
返るエラーの一覧:
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
参照
GetStation
const Station* nn::pia::transport::StationManager::GetStationByAddress ( const common::InetAddress addr) const

インターネットアドレスに対応する Station を得ます( const 版)。

引数
[in]addrインターネットアドレス。
戻り値
指定したインターネットアドレスに対応する Station が存在すれば、その Station を指すポインタが返ります。存在しなければ、 NULL ポインタが返ります。
返るエラーの一覧:
ResultInvalidArgument 引数に誤りがあります。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
参照
GetStation
virtual void nn::pia::transport::StationManager::Trace ( uint64_t  flag) const
virtual

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

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