7#include "OnlineSubsystem.h"
8#include "OnlineSubsystemImpl.h"
9#include "OnlineSubsystemPicoPackage.h"
10#include "OnlineMessageTaskManagerPico.h"
11#include "OnlineSubsystemPicoNames.h"
25typedef TSharedPtr<class FOnlineIdentityPico, ESPMode::ThreadSafe> FOnlineIdentityPicoPtr;
26typedef TSharedPtr<class FOnlineFriendsPico, ESPMode::ThreadSafe> FOnlineFriendsPicoPtr;
29typedef TSharedPtr<class FOnlineSessionPico, ESPMode::ThreadSafe> FOnlineSessionPicoPtr;
31typedef TSharedPtr<class FOnlineLeaderboardPico, ESPMode::ThreadSafe> FOnlineLeaderboardPicoPtr;
34class FPicoApplicationInterface;
48 virtual IOnlineSessionPtr GetSessionInterface()
const override;
51 virtual IOnlineFriendsPtr GetFriendsInterface()
const override;
52 virtual IOnlinePartyPtr GetPartyInterface()
const override;
53 virtual IOnlineGroupsPtr GetGroupsInterface()
const override;
54 virtual IOnlineSharedCloudPtr GetSharedCloudInterface()
const override;
55 virtual IOnlineUserCloudPtr GetUserCloudInterface()
const override;
56 virtual IOnlineEntitlementsPtr GetEntitlementsInterface()
const override;
57 virtual IOnlineLeaderboardsPtr GetLeaderboardsInterface()
const override;
58 virtual IOnlineVoicePtr GetVoiceInterface()
const override;
59 virtual IOnlineExternalUIPtr GetExternalUIInterface()
const override;
60 virtual IOnlineTimePtr GetTimeInterface()
const override;
63 virtual IOnlineIdentityPtr GetIdentityInterface()
const override;
64 virtual IOnlineTitleFilePtr GetTitleFileInterface()
const override;
65 virtual IOnlineStoreV2Ptr GetStoreV2Interface()
const override;
66 virtual IOnlinePurchasePtr GetPurchaseInterface()
const override;
67 virtual IOnlineEventsPtr GetEventsInterface()
const override;
68 virtual IOnlineAchievementsPtr GetAchievementsInterface()
const override;
69 virtual IOnlineSharingPtr GetSharingInterface()
const override;
70 virtual IOnlineUserPtr GetUserInterface()
const override;
71 virtual IOnlineMessagePtr GetMessageInterface()
const override;
72 virtual IOnlinePresencePtr GetPresenceInterface()
const override;
73 virtual IOnlineChatPtr GetChatInterface()
const override;
74 virtual IOnlineStatsPtr GetStatsInterface()
const override;
75 virtual IOnlineTurnBasedPtr GetTurnBasedInterface()
const override;
76 virtual IOnlineTournamentPtr GetTournamentInterface()
const override;
79 virtual bool Init()
override;
80 virtual bool Shutdown()
override;
81 virtual FString GetAppId()
const override;
82 virtual bool Exec(
class UWorld* InWorld,
const TCHAR* Cmd, FOutputDevice& Ar)
override;
83 virtual FText GetOnlineServiceName()
const override;
87 virtual bool Tick(
float DeltaTime)
override;
92 TSharedPtr<FRTCPicoUserInterface> GetRtcUserInterface()
const;
94 TSharedPtr<FPicoApplicationInterface> GetApplicationInterface()
const;
96 TSharedPtr<FApplicationLifecycleInterface> GetApplicationLifecycleInterface()
const;
98 TSharedPtr<FPicoIAPInterface> GetPicoIAPInterface()
const;
100 TSharedPtr<FPicoUserInterface> GetPicoUserInterface()
const;
102 TSharedPtr<FPicoPresenceInterface> GetPicoPresenceInterface()
const;
104 TSharedPtr<FPicoSportInterface> GetPicoSportInterface()
const;
108 FOnlineSessionPicoPtr GetGameSessionInterface()
const;
110 TSharedPtr<FPicoAchievementsInterface> GetPicoAchievementsInterface()
const;
117 void AddAsyncTask(ppfRequest RequestId, FPicoMessageOnCompleteDelegate Delegate);
121 FPicoMulticastMessageOnCompleteDelegate& GetOrAddNotify(ppfMessageType MessageType)
const;
122 void RemoveNotifyDelegate(ppfMessageType MessageType,
const FDelegateHandle& Delegate)
const;
129 FOnlineSubsystemImpl(PICO_SUBSYSTEM, InInstanceName),
133 bool IsInitialized()
const;
140 bool InitWithWindowsPlatform()
const;
141#elif PLATFORM_ANDROID
142 bool InitWithAndroidPlatform();
151 TSharedPtr<FRTCPicoUserInterface> RtcPicoUserInterface;
153 TSharedPtr<FPicoApplicationInterface> PicoApplicationInterface;
155 TSharedPtr<FPicoPresenceInterface> PicoPresenceInterface;
157 TSharedPtr<FApplicationLifecycleInterface> PicoApplicationLifecycleInterface;
159 TSharedPtr<FPicoIAPInterface> PicoIAPInterface;
161 TSharedPtr<FPicoUserInterface> PicoUserInterface;
163 TSharedPtr<FPicoSportInterface> PicoSportInterface;
165 FOnlineSessionPicoPtr GameSessionInterface;
167 FOnlineLeaderboardPicoPtr LeaderboardInterface;
169 TSharedPtr<FPicoAchievementsInterface> PicoAchievementsInterface;
175namespace FNetworkProtocolTypes
177 ONLINESUBSYSTEMPICO_API
extern const FLazyName Pico;
180typedef TSharedPtr<FOnlineSubsystemPico, ESPMode::ThreadSafe> FOnlineSubsystemPicoPtr;
Pico Application interface class.
Definition: ApplicationLifecycleInterface.h:29
Definition: OnlineLeaderboardInterfacePico.h:31
FOnlineSessionPico class inherited from IOnlineSession(Unreal Engine).
Definition: OnlineSessionInterfacePico.h:58
OnlineSubsystemPico class inherited from FOnlineSubsystemImpl(Unreal Engine)
Definition: OnlineSubsystemPico.h:44
FOnlineSubsystemPico()=delete
class FOnlineAsyncTaskManagerPico * OnlineAsyncTaskThreadRunnable
Definition: OnlineSubsystemPico.h:172
FOnlineIdentityPicoPtr IdentityInterface
Definition: OnlineSubsystemPico.h:146
FOnlineFriendsPicoPtr FriendsInterface
Definition: OnlineSubsystemPico.h:149
PicoAchievementsInterface class.
Definition: Pico_Achievements.h:46
PicoIAPInterface class.
Definition: Pico_IAP.h:38
Pico Presence interface class.
Definition: PicoPresenceInterface.h:45
PicoSportInterface class.
Definition: Pico_Sport.h:37
PicoUserInterface class.
Definition: Pico_User.h:43
Pico RTC interface class.
Definition: RTCPicoUserInterface.h:198