24class Identity :
public ::std::enable_shared_from_this<::Social::Identity> {
49 virtual ::Social::IdentityEventResponse initialize(::std::weak_ptr<::Social::User>);
52 virtual ::Social::IdentityType getType()
const = 0;
61 virtual void cancelSignIn();
64 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<bool>> signOut();
67 virtual void doDisconnect();
70 virtual bool isSignedIn()
const;
73 virtual bool isNewAccount()
const;
76 virtual bool isSignInInProgress()
const;
79 virtual bool isGuest()
const;
82 virtual bool isRemote()
const;
85 virtual ::gsl::span<::Social::IdentityType const> getDependencies()
const;
91 virtual ::Social::IdentityEventResponse onIdentitySignOut(::Social::IdentityType);
94 virtual ::std::string
const& getId()
const;
97 virtual ::Social::PlayerIDs getIds()
const;
100 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Social::AuthToken>>
101 getAuthToken(::std::string
const&)
const;
110 virtual ::Social::UserData
const getUserData(::std::string
const&)
const;
116 virtual bool hasCachedCredentials()
const;
119 virtual void clearCachedCredentials();
122 virtual ::std::string
const& getDisplayName()
const;
125 virtual void setPresence(::std::string
const&);
128 virtual void clearPresence();
131 virtual bool hasPlayedLegacyGame()
const;
134 virtual bool getLegacyOptionsData(::std::vector<uchar>&);
137 virtual void checkIsLegacyPlayer(::std::weak_ptr<::Social::User>);
140 virtual bool hasPremiumPlatformAccess()
const;
143 virtual void checkPremiumPlatformStatusAsync(::std::function<
void(
bool)>);
146 virtual bool hasPlatformIcons()
const;
149 virtual bool hasPlatformProfileCards()
const;
152 virtual ::std::string getPlatformId()
const;
155 virtual ::std::string getPlatformOfflineID()
const;
158 virtual ::std::string getPlatformOnlineID()
const;
161 virtual ::Social::PermissionDenyReason isMultiplayerAllowed()
const;
164 virtual ::Social::PermissionDenyReason isChatAllowed()
const;
167 virtual ::Social::PermissionDenyReason isAddFriendAllowed()
const;
170 virtual ::Social::PermissionDenyReason isUserGeneratedContentAllowed()
const;
173 virtual ::Social::PermissionDenyReason isCreateAndJoinClubsAllowed()
const;
176 virtual ::Social::PermissionDenyReason isViewingProfilesAllowed()
const;
179 virtual ::Social::PermissionDenyReason isUploadCapturesAllowed()
const;
182 virtual int addPermissionsChangeListener(::std::function<
void()>);
185 virtual void removePermissionsChangeListener(
int);
188 virtual bool isPlatformParentalControlsEnabled()
const;
191 virtual void refreshPlatformParentalControlsSetting();
194 virtual void refreshFriendListProfileDataIfAllowed();
197 virtual bool isBlockingUser(::std::string
const&)
const;
200 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Social::PlatformUserProfileData>>
201 getProfile(::std::string
const&);
204 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::std::vector<::Social::PlatformUserProfileData>>>
205 getProfiles(::std::vector<::std::string>
const&);
208 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::std::vector<::Social::PlatformUserProfileData>>>
212 virtual void pruneProfileImageCache();
215 virtual void getLinkedXuids(
216 ::std::function<
void(::std::string, ::std::string)>,
217 ::std::vector<::std::string>
const&,
218 ::std::shared_ptr<::Social::Identity>
const
223 getLinkedPlatformIds(::std::function<
void(::std::string, ::std::string)>, ::std::vector<::std::string>
const&);