CTR NEX API Reference
nn::nex::MatchmakeSession クラス

マッチメイクの情報を格納するクラスです。 [詳解]

#include <RendezVous/Services/Jugem/Matchmake/src/Common/MatchmakeSession.h>

+ nn::nex::MatchmakeSession の継承関係図

公開メンバ関数

 MatchmakeSession ()
 コンストラクタです。 [詳解]
 
virtual ~MatchmakeSession ()
 デストラクタです。
 
void ClearFlag (qUnsignedInt32 uiFlag)
 ギャザリングフラグをクリアします [詳解]
 
void ClearOption0Flag (qUnsignedInt32 uiFlag)
 マッチメイクセッションのオプションを解除します。 [詳解]
 
qBool FlagIsSet (qUnsignedInt32 uiFlag) const
 ギャザリングフラグがセットされているかを確認します [詳解]
 
void GetApplicationBuffer (qVector< qUnsignedInt8 > *pApplicationBuffer) const
 アプリケーション定義のデータを取得します。 [詳解]
 
qUnsignedInt32 GetAttribute (qUnsignedInt32 uiIndex) const
 属性を取得します。 [詳解]
 
const StringGetCodeword () const
 あいことばを取得します [詳解]
 
const StringGetDescription () const
 説明文字列を取得します。 [詳解]
 
qUnsignedInt32 GetGameMode () const
 ゲームモードを取得します。 [詳解]
 
virtual String GetGatheringType () const
 自分のクラス名を返します [詳解]
 
PrincipalID GetHostPID () const
 ギャザリングのホストの プリンシパルID を取得します。 [詳解]
 
GatheringID GetID () const
 ギャザリングの ID を取得します。 [詳解]
 
const MatchmakeParamGetMatchmakeParam () const
 マッチメイクパラメータを取得します。 [詳解]
 
MatchmakeSystemType GetMatchmakeSystemType () const
 マッチメイクシステムタイプを取得します。 [詳解]
 
qUnsignedInt16 GetMaxParticipants () const
 ギャザリングの最大参加人数を取得します [詳解]
 
qUnsignedInt16 GetMinParticipants () const
 ギャザリングの最小参加人数を取得します [詳解]
 
bool GetOpenParticipation () const
 マッチメイクセッションへ参加可能であるかを取得します [詳解]
 
qBool GetOption0FlagSet (qUnsignedInt32 uiFlag) const
 マッチメイクセッションのオプションを取得します [詳解]
 
PrincipalID GetOwnerPID () const
 ギャザリングのオーナーの PrincipalID を取得します。 [詳解]
 
qUnsignedInt32 GetParticipantCount () const
 マッチメイクセッションの参加人数を取得します [詳解]
 
qUnsignedInt8 GetProgressScore () const
 ゲーム進行度を取得します。 [詳解]
 
GatheringID GetReferPersistentGatheringId () const
 関連する永続ギャザリングの ID を取得します。 [詳解]
 
const qVector< qByte > & GetSessionKey () const
 マッチメイクセッションの P2P 通信用の共通鍵を取得します [詳解]
 
const DateTimeGetStartedTime () const
 マッチメイク開始日時を取得します。 [詳解]
 
qBool GetSystemPasswordEnabled () const
 マッチメイクセッションシステムパスワードがセットされているかどうかを取得します。 [詳解]
 
const StringGetUserPassword () const
 マッチメイクセッションユーザーパスワードを取得します。 [詳解]
 
qBool GetUserPasswordEnabled () const
 マッチメイクセッションユーザーパスワードがセットされているかどうかを取得します。 [詳解]
 
virtual qBool IsA (const String &strClass) const
 引数で与えられたクラス名のオブジェクトであるかを判定します。 [詳解]
 
virtual qBool IsAKindOf (const String &strClass) const
 引数で与えられたクラス名のクラスか、それを継承したオブジェクトかを判定します。 [詳解]
 
void Reset ()
 セットしたデータを全て初期化します。 [詳解]
 
void SetApplicationBuffer (const qVector< qUnsignedInt8 > &applicationBuffer)
 アプリケーション定義のデータをセットします。 [詳解]
 
void SetAttribute (qUnsignedInt32 uiIndex, qUnsignedInt32 val)
 属性をセットします。 [詳解]
 
qBool SetCodeword (const String &codeword)
 あいことばをセットします [詳解]
 
void SetDescription (const String &strDescription)
 説明文字列をセットします。 [詳解]
 
void SetFlag (qUnsignedInt32 uiFlag)
 GatheringFlags で列挙されているギャザリングフラグをセットします [詳解]
 
void SetGameMode (qUnsignedInt32 gameMode)
 ゲームモードをセットします。 [詳解]
 
GatheringID SetID (GatheringID id)
 ギャザリングの ID を設定します。 [詳解]
 
void SetMatchmakeParam (const MatchmakeParam &matchmakeParam)
 マッチメイクパラメータをセットします。 [詳解]
 
void SetMatchmakeSystemType (MatchmakeSystemType matchmakeSystemType, qUnsignedInt32 policyArgument=0)
 マッチメイクシステムタイプをセットします。 [詳解]
 
void SetMaxParticipants (qUnsignedInt16 uiMaxParticipants)
 ギャザリングの最大参加人数をセットします [詳解]
 
void SetMinParticipants (qUnsignedInt16 uiMinParticipants)
 ギャザリングの最小参加人数をセットします [詳解]
 
void SetOpenParticipation (bool openParticipation)
 マッチメイクセッションへ参加可能であるかをセットします [詳解]
 
void SetOption0Flag (qUnsignedInt32 uiFlag)
 マッチメイクセッションのオプションを設定します。 [詳解]
 
qBool SetProgressScore (qUnsignedInt8 progressScore)
 ゲーム進行度をセットします。 [詳解]
 
void SetReferPersistentGatheringId (GatheringID referPersistentGatheringId)
 関連する永続ギャザリングの ID をセットします。 [詳解]
 
void SetUserPassword (const String &userPassword)
 マッチメイクセッションユーザーパスワードをセットします。 [詳解]
 

詳解

マッチメイクの情報を格納するクラスです。

構築子と解体子

nn::nex::MatchmakeSession::MatchmakeSession ( )

コンストラクタです。

初期状態はゲームモード、属性は全て0、マッチメイクシステムタイプは MATCHMAKE_SYSTEM_TYPE_INVALID 、ゲーム進行度は MAX_PROGRESS_SCORE となります。

関数詳解

void nn::nex::MatchmakeSession::SetGameMode ( qUnsignedInt32  gameMode)

ゲームモードをセットします。

このマッチメイクセッションのゲームモードをセットします。

引数
[in]gameModeアプリケーション定義のゲームモード。
void nn::nex::MatchmakeSession::SetAttribute ( qUnsignedInt32  uiIndex,
qUnsignedInt32  val 
)

属性をセットします。

このマッチメイクセッションの属性をセットします。最大6つ指定できます。

引数
[in]uiIndexセットする属性のインデックス。0以上NUM_MATCHMAKE_SESSION_ATTRIBUTES - 1以下の値を指定できます。
[in]valアプリケーション定義の属性値。
void nn::nex::MatchmakeSession::SetMatchmakeSystemType ( MatchmakeSystemType  matchmakeSystemType,
qUnsignedInt32  policyArgument = 0 
)

マッチメイクシステムタイプをセットします。

このマッチメイクセッションのマッチメイクシステムタイプをセットします。

matchmakeSystemTypeにMATCHMAKE_SYSTEM_TYPE_FRIENDが指定されたマッチメイクセッションはフレンドのみが参加可能となるように制限されます。 このとき Gathering::SetFlag() により GatheringFlags::MigrateOwner がセットされていた場合は オーナーがマッチメイクセッションを退出して自動的にオーナーが他のプレイヤーに移行されたときにギャザリングが自動的に締め切られます。 ただし、policyArgumentに FriendOnlyParticipationPolicyArgument::WithoutClose を指定した場合は自動的に締め切られなくなります。

matchmakeSystemTypeにMATCHMAKE_SYSTEM_TYPE_ANYBODYが指定されたマッチメイクセッションは誰でも参加可能になります。 このとき Gathering::SetFlag() により GatheringFlags::MigrateOwner がセットされていた場合は オーナーがマッチメイクセッションを退出して自動的にオーナーが他のプレイヤーに移行されてもギャザリングが自動的に締め切られませんが、 policyArgumentに AnybodyParticipationPolicyArgument::CloseOnOwnerMigration を指定した場合は自動的に締め切られるようになります。

注意
MATCHMAKE_SYSTEM_TYPE_FRIEND の場合と MATCHMAKE_SYSTEM_TYPE_ANYBODY の場合とで、デフォルト動作(オーナー移行時に自動的に締め切られる/締め切られない)が異なることに注意してください。

matchmakeSystemType に MATCHMAKE_SYSTEM_TYPE_FRIEND もしくは MATCHMAKE_SYSTEM_TYPE_ANYBODY のいずれでもない値が指定されたときは policyArgument は無視されます。

matchmakeSystemTypeにMATCHMAKE_SYSTEM_TYPE_PERSISTENT_GATHERING(MATCHMAKE_SYSTEM_TYPE_COMMUNITY)を指定した場合、SetAttribute() で 0 番目の属性値に永続ギャザリング(コミュニティ)のギャザリングIDをセットする必要があります。

引数
[in]matchmakeSystemTypeマッチメイクシステムタイプ。
[in]policyArgument参加ポリシー引数(デフォルト値 0)
void nn::nex::MatchmakeSession::SetApplicationBuffer ( const qVector< qUnsignedInt8 > &  applicationBuffer)

アプリケーション定義のデータをセットします。

このマッチメイクセッションにアプリケーション定義のデータをセットします。最大 MATCHMAKE_BUFFER_MAX_LENGTH byteです。

引数
[in]applicationBufferアプリケーション定義のデータ。
void nn::nex::MatchmakeSession::SetOpenParticipation ( bool  openParticipation)

マッチメイクセッションへ参加可能であるかをセットします

このマッチメイクセッションへ参加可能であるかをセットします

引数
[in]openParticipationマッチメイクセッションへ参加可能であるか。
void nn::nex::MatchmakeSession::Reset ( )

セットしたデータを全て初期化します。

このマッチメイクセッションにセットした情報を全て初期化します。ゲームモード、属性は全て0となり、マッチメイクシステムタイプは MATCHMAKE_SYSTEM_TYPE_INVALID 、ゲーム進行度は MAX_PROGRESS_SCORE となります。

qUnsignedInt32 nn::nex::MatchmakeSession::GetGameMode ( ) const

ゲームモードを取得します。

このマッチメイクセッションにセットされたゲームモードを取得します。

戻り値
ゲームモード
qUnsignedInt32 nn::nex::MatchmakeSession::GetAttribute ( qUnsignedInt32  uiIndex) const

属性を取得します。

このマッチメイクセッションにセットされた属性を取得します。

引数
[in]uiIndex取得する属性のインデックス。0以上NUM_MATCHMAKE_SESSION_ATTRIBUTES - 1以下の値を指定できます。
戻り値
指定されたインデックスの属性値。
MatchmakeSystemType nn::nex::MatchmakeSession::GetMatchmakeSystemType ( ) const

マッチメイクシステムタイプを取得します。

このマッチメイクセッションにセットされたマッチメイクシステムタイプを取得します。

戻り値
マッチメイクシステムタイプ
void nn::nex::MatchmakeSession::GetApplicationBuffer ( qVector< qUnsignedInt8 > *  pApplicationBuffer) const

アプリケーション定義のデータを取得します。

このマッチメイクセッションにセットされたアプリケーション定義のデータを取得します。

引数
[out]pApplicationBufferアプリケーション定義のデータへのポインタ
bool nn::nex::MatchmakeSession::GetOpenParticipation ( ) const

マッチメイクセッションへ参加可能であるかを取得します

このマッチメイクセッションへ参加可能であるかを取得します

戻り値
マッチメイクセッションへ参加可能であるか。
qUnsignedInt32 nn::nex::MatchmakeSession::GetParticipantCount ( ) const

マッチメイクセッションの参加人数を取得します

このマッチメイクセッションへの参加人数を取得します。

戻り値
マッチメイクセッションの参加人数。
const qVector<qByte>& nn::nex::MatchmakeSession::GetSessionKey ( ) const

マッチメイクセッションの P2P 通信用の共通鍵を取得します

このマッチメイクセッションの P2P 通信用の共通鍵を取得します。 MatchmakeExtensionClient::AutoMatchmake() , MatchmakeExtensionClient::FindMatchmakeSessionByGatheringIdDetail() と, MatchmakeSession を out 引数に取る MatchmakeExtensionClient::CreateMatchmakeSession() , MatchmakeExtensionClient::JoinMatchmakeSession() で取得した場合のみ有効な値がセットされます。 鍵長は Network::MAX_P2P_SIGNATURE_KEY_LEN byte です。

戻り値
P2P 通信用の共通鍵
参照
Network::SetP2PDataPacketSessionSignatureKey()
qBool nn::nex::MatchmakeSession::SetProgressScore ( qUnsignedInt8  progressScore)

ゲーム進行度をセットします。

このマッチメイクセッションのゲーム進行度をセットします。

引数
[in]progressScoreアプリケーション定義のゲーム進行度。0 以上 MAX_PROGRESS_SCORE 以下の値を指定できます。
戻り値
ゲーム進行度が MAX_PROGRESS_SCORE より大きい場合は、何もせずにfalseを返します。 それ以外の場合は、ゲーム進行度を設定しtrueを返します。
qUnsignedInt8 nn::nex::MatchmakeSession::GetProgressScore ( ) const

ゲーム進行度を取得します。

このマッチメイクセッションにセットされたゲーム進行度を取得します。

戻り値
ゲーム進行度
void nn::nex::MatchmakeSession::SetOption0Flag ( qUnsignedInt32  uiFlag)

マッチメイクセッションのオプションを設定します。

すでに設定されているオプションに指定したフラグを追加します。

引数
[in]uiFlagMatchmakeFlags::MatchmakeSessionOption0 の値
参照
MatchmakeFlags::MatchmakeSessionOption0
void nn::nex::MatchmakeSession::ClearOption0Flag ( qUnsignedInt32  uiFlag)

マッチメイクセッションのオプションを解除します。

すでに設定されているオプションから指定したフラグを取り除きます。

引数
[in]uiFlagMatchmakeFlags::MatchmakeSessionOption0 の値
参照
MatchmakeFlags::MatchmakeSessionOption0
qBool nn::nex::MatchmakeSession::GetOption0FlagSet ( qUnsignedInt32  uiFlag) const

マッチメイクセッションのオプションを取得します

引数
[in]uiFlagMatchmakeFlags::MatchmakeSessionOption0 の値
戻り値
オプション値
参照
MatchmakeFlags::MatchmakeSessionOption0
void nn::nex::MatchmakeSession::SetMatchmakeParam ( const MatchmakeParam matchmakeParam)

マッチメイクパラメータをセットします。

マッチメイクパラメータをセットします。 マッチメイクパラメータは MATCHMAKE_SELECTION_METHOD_SCORE_BASED によるマッチメイクセッション選択方式で利用されます。

引数
[in]matchmakeParamマッチメイクパラメータ。
const MatchmakeParam& nn::nex::MatchmakeSession::GetMatchmakeParam ( ) const

マッチメイクパラメータを取得します。

マッチメイクパラメータを取得します。

戻り値
マッチメイクパラメータ
void nn::nex::MatchmakeSession::SetUserPassword ( const String userPassword)

マッチメイクセッションユーザーパスワードをセットします。

マッチメイクセッションユーザーパスワードをセットします。 マッチメイクセッションユーザーパスワードは最大 MAX_MATCHMAKE_SESSION_USER_PASSWORD_LENGTH 文字までセットできます。

引数
[in]userPasswordマッチメイクセッションユーザーパスワード。
const String& nn::nex::MatchmakeSession::GetUserPassword ( ) const

マッチメイクセッションユーザーパスワードを取得します。

ローカルで MatchmakeSession::SetUserPassword() を使いパスワードをセットした場合のみ値を取得できます。 サーバーから取得したマッチメイクセッションからはパスワードを取得できず、常に空文字列が返されます。 マッチメイクセッションユーザーパスワードがセットされているかどうかは MatchmakeSession::GetUserPasswordEnabled() で確認できます。

戻り値
マッチメイクセッションユーザーパスワード。
const DateTime& nn::nex::MatchmakeSession::GetStartedTime ( ) const

マッチメイク開始日時を取得します。

マッチメイクを開始した日時を取得します。

戻り値
マッチメイク開始日時
void nn::nex::MatchmakeSession::SetReferPersistentGatheringId ( GatheringID  referPersistentGatheringId)

関連する永続ギャザリングの ID をセットします。

このマッチメイクセッションを関連付ける永続ギャザリングの ID をセットします。

引数
[in]referPersistentGatheringIdこのマッチメイクセッションを関連付ける永続ギャザリングの ID。 INVALID_GATHERINGID は無効値となり、関連する永続ギャザリングはないことを表します。 永続ギャザリングに関連付けられたマッチメイクセッションの数は PersistentGathering::GetMatchmakeSessionCount() で取得できます。 マッチメイクセッションが破棄されたときは自動的にこの数が減少します。 初期値は INVALID_GATHERINGID です。
GatheringID nn::nex::MatchmakeSession::GetReferPersistentGatheringId ( ) const

関連する永続ギャザリングの ID を取得します。

このマッチメイクセッションにセットされた関連する永続ギャザリングの ID を取得します。

戻り値
関連する ID
qBool nn::nex::MatchmakeSession::GetUserPasswordEnabled ( ) const

マッチメイクセッションユーザーパスワードがセットされているかどうかを取得します。

サーバーから取得したマッチメイクセッションからのみ有効な値を取得できます。

戻り値
マッチメイクセッションユーザーパスワードがセットされているかどうか。
qBool nn::nex::MatchmakeSession::GetSystemPasswordEnabled ( ) const

マッチメイクセッションシステムパスワードがセットされているかどうかを取得します。

サーバーから取得したマッチメイクセッションからのみ有効な値を取得できます。

戻り値
マッチメイクセッションシステムパスワードがセットされているかどうか。
qBool nn::nex::MatchmakeSession::SetCodeword ( const String codeword)

あいことばをセットします

空文字列をセットすることにより、あいことばを利用しない設定にすることができます。 初期状態は空文字列です。

引数
[in]codewordあいことば


戻り値一覧:

true 成功。あいことばとして使用できる文字列もしくは空文字列です

false 失敗。あいことばとして使用できない文字が含まれています

const String& nn::nex::MatchmakeSession::GetCodeword ( ) const

あいことばを取得します

戻り値
あいことば
GatheringID nn::nex::Gathering::GetID ( ) const
inherited

ギャザリングの ID を取得します。

戻り値
ギャザリングの ID
GatheringID nn::nex::Gathering::SetID ( GatheringID  id)
inherited

ギャザリングの ID を設定します。

MatchmakeExtensionClient::AutoMatchmake()MatchmakeExtensionClient::CreateMatchmakeSession() などでギャザリングを 登録する際は必ず INVALID_GATHERINGID を指定してください また、 MatchmakeExtensionClient::UpdateMatchmakeSession() を使用する際、 本関数を用いて更新するマッチメイクセッションのギャザリングIDを指定してください。

引数
[in]idギャザリングの ID
戻り値
設定された後のギャザリング ID
virtual String nn::nex::Gathering::GetGatheringType ( ) const
virtualinherited

自分のクラス名を返します

戻り値
自分のクラス名
virtual qBool nn::nex::Gathering::IsA ( const String strClass) const
virtualinherited

引数で与えられたクラス名のオブジェクトであるかを判定します。

注釈
true を返す場合、そのクラスへキャストすることが可能です。
引数
[in]strClassクラス名


戻り値一覧:

true 引数で与えられたクラス名のクラスオブジェクトである

false 引数で与えられたクラス名のクラスオブジェクトではない

virtual qBool nn::nex::Gathering::IsAKindOf ( const String strClass) const
virtualinherited

引数で与えられたクラス名のクラスか、それを継承したオブジェクトかを判定します。

注釈
true を返す場合、そのクラスへキャストすることが可能です。
引数
[in]strClassクラス名


戻り値一覧:

true 引数で与えられたクラス名のクラスまたはそれを継承したオブジェクトである

false 引数で与えられたクラス名のクラスまたはそれを継承したオブジェクトではない

void nn::nex::Gathering::SetDescription ( const String strDescription)
inherited

説明文字列をセットします。

ギャザリングの説明文字列をセットします。アプリケーションが任意の値を設定できます(最大 MATCHMAKE_STRING_MAX_LENGTH 文字)。

引数
[in]strDescription説明文字列
const String& nn::nex::Gathering::GetDescription ( ) const
inherited

説明文字列を取得します。

ギャザリングの説明文字列を取得します。

戻り値
ギャザリングの説明文字列
PrincipalID nn::nex::Gathering::GetOwnerPID ( ) const
inherited

ギャザリングのオーナーの PrincipalID を取得します。

ギャザリングのオーナーの PrincipalID を取得します。オーナーはギャザリングを変更できる唯一のユーザーで、 マッチメイクの募集状態の変更や、ギャザリングの削除などを行うことができます。

初期状態では、ギャザリングの登録ユーザーがオーナーとなりますが、MatchMakingClient::MigrateGatheringOwnership() を 実行するか、GatheringFlag に MigrateOwner をセットした状態でオーナーが退出することでオーナーを変更することができます。

戻り値
ギャザリングのオーナーの PrincipalID
参照
MatchMakingClient::MigrateGatheringOwnership()
PrincipalID nn::nex::Gathering::GetHostPID ( ) const
inherited

ギャザリングのホストの プリンシパルID を取得します。

ホストは P2P セッションの管理者で、 ギャザリングの状態を変更したりすることはできません。他のユーザーが P2P セッションに参加する場合、 ホストの URL をサーバーから取得する必要があります。

戻り値
ギャザリングのホストの プリンシパルID
参照
MatchMakingClient::UpdateSessionHost()
qUnsignedInt16 nn::nex::Gathering::GetMinParticipants ( ) const
inherited

ギャザリングの最小参加人数を取得します

戻り値
ギャザリングの最小参加人数
qUnsignedInt16 nn::nex::Gathering::GetMaxParticipants ( ) const
inherited

ギャザリングの最大参加人数を取得します

戻り値
ギャザリングの最大参加人数
void nn::nex::Gathering::SetMinParticipants ( qUnsignedInt16  uiMinParticipants)
inherited

ギャザリングの最小参加人数をセットします

ギャザリングの最小参加人数をセットします。現在、本関数でセットした値はマッチメイクに影響を与えません。

引数
[in]uiMinParticipantsギャザリングの最小参加人数
void nn::nex::Gathering::SetMaxParticipants ( qUnsignedInt16  uiMaxParticipants)
inherited

ギャザリングの最大参加人数をセットします

この人数を越えてギャザリングに参加することはできません。 0 を指定した場合は最大参加人数が無制限になります。 MatchmakeExtensionClient::UpdateMatchmakeSession()MatchmakeExtensionClient::UpdatePersistentGathering() で最大参加人数を更新する場合、 現在の参加人数未満の値を指定する事もできます。この場合は既存の参加者が退出させられることはありませんが、 現在の参加人数が最大参加人数を下回るまでそのギャザリングに参加することはできません。

引数
[in]uiMaxParticipantsギャザリングの最大参加人数
qBool nn::nex::Gathering::FlagIsSet ( qUnsignedInt32  uiFlag) const
inherited

ギャザリングフラグがセットされているかを確認します

指定されたギャザリングフラグがセットされているかを確認します。

引数
[in]uiFlagセットされているかどうか確認するギャザリングフラグ
戻り値
フラグがセットされているかどうか
参照
GatheringFlags
void nn::nex::Gathering::SetFlag ( qUnsignedInt32  uiFlag)
inherited

GatheringFlags で列挙されているギャザリングフラグをセットします

指定された ギャザリングフラグをセットします。

引数
[in]uiFlagセットするギャザリングフラグ
参照
GatheringFlags
void nn::nex::Gathering::ClearFlag ( qUnsignedInt32  uiFlag)
inherited

ギャザリングフラグをクリアします

指定されたギャザリングフラグをクリアします。

引数
[in]uiFlagクリアするギャザリングフラグ
参照
GatheringFlags