跳到主要内容

Client Global API Reference

Global accessors for PGOS Client SDK interfaces. See individual *_i.hpp files for details. You should not cache the results of these accessors: will be invalid when the IClientSDK is destroyed.

API List

APIDescription
ClientSDKGet the IClientSDK instance.
BattleGet the IBattle instance (after calling IClientSDK::InitSDK).
BlocklistGet the IBlocklist instance (after calling IClientSDK::InitSDK).
EconomyGet the IEconomy instance (after calling IClientSDK::InitSDK).
ExtensionGet the IExtension instance (after calling IClientSDK::InitSDK).
FakeAccountGet the IFakeAccount instance (after calling IClientSDK::InitSDK).
FriendGet the IFriend instance (after calling IClientSDK::InitSDK).
GoalGet the IGoal instance (after calling IClientSDK::InitSDK).
GroupGet the IGroup instance (after calling IClientSDK::InitSDK).
InstantChatGet the IInstantChat instance (after calling IClientSDK::InitSDK).
LeaderboardGet the ILeaderboard instance (after calling IClientSDK::InitSDK).
LobbyGet the ILobby instance (after calling IClientSDK::InitSDK).
MailGet the IMail instance (after calling IClientSDK::InitSDK).
MatchmakingGet the IMatchmaking instance (after calling IClientSDK::InitSDK).
MetricGet the IMetric instance (after calling IClientSDK::InitSDK).
P2PBattleGet the IP2PBattle instance (after calling IClientSDK::InitSDK).
P2PConnectionGet the IP2PConnection instance (after calling IClientSDK::InitSDK).
PartyGet the IParty instance (after calling IClientSDK::InitSDK).
PersonalChatGet the IPersonalChat instance (after calling IClientSDK::InitSDK).
PlayerAuthGet the IPlayerAuth instance (after calling IClientSDK::InitSDK).
PlayerBlobDataGet the IPlayerBlobData instance (after calling IClientSDK::InitSDK).
PlayerProfileGet the IPlayerProfile instance (after calling IClientSDK::InitSDK).
PublicChatGet the IPublicChat instance (after calling IClientSDK::InitSDK).
SettingsGet the ISettings instance (after calling IClientSDK::InitSDK).
StatisticsGet the IStatistics instance (after calling IClientSDK::InitSDK).
SystemGet the ISystem instance (after calling IClientSDK::InitSDK).
TitleConfigDataGet the ITitleConfigData instance (after calling IClientSDK::InitSDK).
TitleFileGet the ITitleFile instance (after calling IClientSDK::InitSDK).
TitleRegionConfigDataGet the ITitleRegionConfigData instance (after calling IClientSDK::InitSDK).
UtilityGet the IUtility instance (after calling IClientSDK::InitSDK).
VoiceGet the IVoice instance (after calling IClientSDK::InitSDK).
WorldGet the IWorld instance (after calling IClientSDK::InitSDK).

API Details

ClientSDK

Get the IClientSDK instance.

/**
* Get the IClientSDK instance.
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IClientSDK> ClientSDK(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IClientSDK>

Battle

Get the IBattle instance (after calling IClientSDK::InitSDK).

/**
* Get the IBattle instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IBattle> Battle(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IBattle>

Blocklist

Get the IBlocklist instance (after calling IClientSDK::InitSDK).

/**
* Get the IBlocklist instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IBlocklist> Blocklist(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IBlocklist>

Economy

Get the IEconomy instance (after calling IClientSDK::InitSDK).

/**
* Get the IEconomy instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IEconomy> Economy(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IEconomy>

Extension

Get the IExtension instance (after calling IClientSDK::InitSDK).

/**
* Get the IExtension instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IExtension> Extension(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IExtension>

FakeAccount

Get the IFakeAccount instance (after calling IClientSDK::InitSDK).

/**
* Get the IFakeAccount instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IFakeAccount> FakeAccount(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IFakeAccount>

Friend

Get the IFriend instance (after calling IClientSDK::InitSDK).

/**
* Get the IFriend instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IFriend> Friend(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IFriend>

Goal

Get the IGoal instance (after calling IClientSDK::InitSDK).

/**
* Get the IGoal instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IGoal> Goal(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IGoal>

Group

Get the IGroup instance (after calling IClientSDK::InitSDK).

/**
* Get the IGroup instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IGroup> Group(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IGroup>

InstantChat

Get the IInstantChat instance (after calling IClientSDK::InitSDK).

/**
* Get the IInstantChat instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IInstantChat> InstantChat(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IInstantChat>

Leaderboard

Get the ILeaderboard instance (after calling IClientSDK::InitSDK).

/**
* Get the ILeaderboard instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ILeaderboard> Leaderboard(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ILeaderboard>

Lobby

Get the ILobby instance (after calling IClientSDK::InitSDK).

/**
* Get the ILobby instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ILobby> Lobby(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ILobby>

Mail

Get the IMail instance (after calling IClientSDK::InitSDK).

/**
* Get the IMail instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IMail> Mail(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IMail>

Matchmaking

Get the IMatchmaking instance (after calling IClientSDK::InitSDK).

/**
* Get the IMatchmaking instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IMatchmaking> Matchmaking(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IMatchmaking>

Metric

Get the IMetric instance (after calling IClientSDK::InitSDK).

/**
* Get the IMetric instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IMetric> Metric(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IMetric>

P2PBattle

Get the IP2PBattle instance (after calling IClientSDK::InitSDK).

/**
* Get the IP2PBattle instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IP2PBattle> P2PBattle(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IP2PBattle>

P2PConnection

Get the IP2PConnection instance (after calling IClientSDK::InitSDK).

/**
* Get the IP2PConnection instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IP2PConnection> P2PConnection(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IP2PConnection>

Party

Get the IParty instance (after calling IClientSDK::InitSDK).

/**
* Get the IParty instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IParty> Party(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IParty>

PersonalChat

Get the IPersonalChat instance (after calling IClientSDK::InitSDK).

/**
* Get the IPersonalChat instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IPersonalChat> PersonalChat(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IPersonalChat>

PlayerAuth

Get the IPlayerAuth instance (after calling IClientSDK::InitSDK).

/**
* Get the IPlayerAuth instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IPlayerAuth> PlayerAuth(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IPlayerAuth>

PlayerBlobData

Get the IPlayerBlobData instance (after calling IClientSDK::InitSDK).

/**
* Get the IPlayerBlobData instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IPlayerBlobData> PlayerBlobData(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IPlayerBlobData>

PlayerProfile

Get the IPlayerProfile instance (after calling IClientSDK::InitSDK).

/**
* Get the IPlayerProfile instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IPlayerProfile> PlayerProfile(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IPlayerProfile>

PublicChat

Get the IPublicChat instance (after calling IClientSDK::InitSDK).

/**
* Get the IPublicChat instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IPublicChat> PublicChat(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IPublicChat>

Settings

Get the ISettings instance (after calling IClientSDK::InitSDK).

/**
* Get the ISettings instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ISettings> Settings(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ISettings>

Statistics

Get the IStatistics instance (after calling IClientSDK::InitSDK).

/**
* Get the IStatistics instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IStatistics> Statistics(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IStatistics>

System

Get the ISystem instance (after calling IClientSDK::InitSDK).

/**
* Get the ISystem instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ISystem> System(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ISystem>

TitleConfigData

Get the ITitleConfigData instance (after calling IClientSDK::InitSDK).

/**
* Get the ITitleConfigData instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ITitleConfigData> TitleConfigData(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ITitleConfigData>

TitleFile

Get the ITitleFile instance (after calling IClientSDK::InitSDK).

/**
* Get the ITitleFile instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ITitleFile> TitleFile(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ITitleFile>

TitleRegionConfigData

Get the ITitleRegionConfigData instance (after calling IClientSDK::InitSDK).

/**
* Get the ITitleRegionConfigData instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<ITitleRegionConfigData> TitleRegionConfigData(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<ITitleRegionConfigData>

Utility

Get the IUtility instance (after calling IClientSDK::InitSDK).

/**
* Get the IUtility instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IUtility> Utility(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IUtility>

Voice

Get the IVoice instance (after calling IClientSDK::InitSDK).

/**
* Get the IVoice instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IVoice> Voice(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IVoice>

World

Get the IWorld instance (after calling IClientSDK::InitSDK).

/**
* Get the IWorld instance (after calling IClientSDK::InitSDK).
*
* @param sdk_inst_idx Ignore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.
*/
std::shared_ptr<IWorld> World(
int32_t sdk_inst_idx = 0);

Parameters:

ParamTypeDescription
sdk_inst_idxint32_tIgnore the 'sdk_inst_idx' parameter if you just need 1 sdk instance in the client process.

Return: std::shared_ptr<IWorld>