7#include "CoreMinimal.h"
8#include "OnlineSubsystemPico.h"
9#include "Interfaces/OnlineIdentityInterface.h"
10#include "PPF_Platform.h"
11#include "OnlineSubsystemPicoNames.h"
13#include "OnlineFriendsInterfacePico.h"
14#include "OnlineSubsystemPicoTypes.h"
21DECLARE_DELEGATE_ThreeParams(FOnGetUserAndRoomDelegate,
const FString& ,
bool ,
const FString& );
28#if ENGINE_MAJOR_VERSION > 4
30#elif ENGINE_MINOR_VERSION > 26
32#elif ENGINE_MINOR_VERSION > 24
45#if ENGINE_MAJOR_VERSION > 4
46 FUniqueNetIdRef UserId;
47#elif ENGINE_MINOR_VERSION > 26
48 FUniqueNetIdRef UserId;
49#elif ENGINE_MINOR_VERSION > 24
50 TSharedRef<const FUniqueNetId> UserId;
62#if ENGINE_MAJOR_VERSION > 4
63 virtual FUniqueNetIdRef GetUserId()
const override {
return UserId; };
64#elif ENGINE_MINOR_VERSION > 26
65 virtual FUniqueNetIdRef GetUserId()
const override {
return UserId; };
66#elif ENGINE_MINOR_VERSION > 24
67 virtual TSharedRef<const FUniqueNetId> GetUserId()
const override {
return UserId; }
70 virtual FString GetRealName()
const override {
return Name; }
73 virtual FString GetDisplayName(
const FString& Platform = FString())
const override {
return Name; }
76 virtual bool GetUserAttribute(
const FString& AttrName, FString& OutAttrValue)
const override;
79 virtual bool SetUserAttribute(
const FString& AttrName,
const FString& AttrValue)
override;
85 virtual FString GetAccessToken()
const override {
return TEXT(
"ACCESSTOKEN"); }
89 virtual bool GetAuthAttribute(
const FString& AttrName, FString& OutAttrValue)
const override;
126 virtual bool Login(int32 LocalUserNum,
const FOnlineAccountCredentials& AccountCredentials)
override;
138 virtual bool Logout(int32 LocalUserNum)
override;
155 virtual TSharedPtr<FUserOnlineAccount>
GetUserAccount(
const FUniqueNetId& UserId)
const override;
198 virtual ELoginStatus::Type
GetLoginStatus(
const FUniqueNetId& UserId)
const override;
211 virtual FString GetAuthToken(int32 LocalUserNum)
const override;
214 virtual void RevokeAuthToken(
const FUniqueNetId& UserId,
const FOnRevokeAuthTokenCompleteDelegate& Delegate)
override;
218 virtual void GetUserPrivilege(
const FUniqueNetId& UserId, EUserPrivileges::Type Privilege,
const FOnGetUserPrivilegeCompleteDelegate& Delegate)
override;
221 virtual FPlatformUserId GetPlatformUserIdFromUniqueNetId(
const FUniqueNetId& UniqueNetId)
const override;
227 UPico_User* GetLoginPicoUser(int32 LocalUserNum);
245 void OnLoginComplete(ppfMessageHandle Message,
bool bIsError, int32 LocalUserNum);
250 FOnlineSubsystemPico& PicoSubsystem;
253#if ENGINE_MAJOR_VERSION > 4
254 TMap<int32, FUniqueNetIdRef>
UserIds;
255#elif ENGINE_MINOR_VERSION > 26
256 TMap<int32, FUniqueNetIdRef>
UserIds;
257#elif ENGINE_MINOR_VERSION > 24
258 TMap<int32, TSharedPtr<const FUniqueNetId>>
UserIds;
260 TMap<int32, UPico_User*> LoginPicoUserMap;
263#if ENGINE_MAJOR_VERSION > 4
264 TUniqueNetIdMap<TSharedRef<FUserOnlineAccountPico>> UserAccounts;
265#elif ENGINE_MINOR_VERSION > 26
266 TUniqueNetIdMap<TSharedRef<FUserOnlineAccountPico>> UserAccounts;
267#elif ENGINE_MINOR_VERSION > 24
268 TMap<FUniqueNetIdPico, TSharedRef<FUserOnlineAccountPico>> UserAccounts;
274typedef TSharedPtr<FOnlineIdentityPico, ESPMode::ThreadSafe> FOnlineIdentityPicoPtr;
OnlineIdentityPico class inherited from IOnlineIdentity(Unreal Engine)
Definition: OnlineIdentityPico.h:112
virtual bool AutoLogin(int32 LocalUserNum) override
Logs a user in to the online service.
virtual TArray< TSharedPtr< FUserOnlineAccount > > GetAllUserAccounts() const override
Gets the account information of all known/registered users.
virtual ELoginStatus::Type GetLoginStatus(const FUniqueNetId &UserId) const override
Gets a user's login status by unique net ID.
virtual ELoginStatus::Type GetLoginStatus(int32 LocalUserNum) const override
Gets a user's login status by controller number.
virtual bool Logout(int32 LocalUserNum) override
Clears the account login information for a user.
virtual FString GetAuthType() const override
Gets the auth type associated with accounts for this platform.
virtual TSharedPtr< const FUniqueNetId > CreateUniquePlayerId(uint8 *Bytes, int32 Size) override
Creates a unique ID from binary data (used during replication).
virtual TSharedPtr< FUserOnlineAccount > GetUserAccount(const FUniqueNetId &UserId) const override
Gets the account information of a registered user.
virtual TSharedPtr< const FUniqueNetId > GetUniquePlayerId(int32 LocalUserNum) const override
Gets the platform-specific unique ID for a user.
virtual FString GetPlayerNickname(int32 LocalUserNum) const override
Gets a users's nickname from the online service by controller number.
virtual bool Login(int32 LocalUserNum, const FOnlineAccountCredentials &AccountCredentials) override
Gets the account login information for a user.
virtual FString GetPlayerNickname(const FUniqueNetId &UserId) const override
Gets a user's nickname from the online service by unique net ID.
virtual TSharedPtr< const FUniqueNetId > CreateUniquePlayerId(const FString &Str) override
Creates a unique ID from string.
UserOnlineAccountPico class inherited from FUserOnlineAccount(Unreal Engine).
Definition: OnlineIdentityPico.h:25
TMap< FString, FString > UserAttributes
Definition: OnlineIdentityPico.h:55
TMap< FString, FString > AdditionalAuthData
Definition: OnlineIdentityPico.h:53