LeviLamina
Loading...
Searching...
No Matches
User.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/social/RelationshipStatus.h"
7#include "mc/client/social/UserPlatformConnectionResult.h"
8#include "mc/client/social/UserPlatformConnectionState.h"
9#include "mc/common/GameUserType.h"
10#include "mc/deps/core/file/PathBuffer.h"
11#include "mc/deps/core/platform/BuildPlatform.h"
12#include "mc/deps/core/threading/IAsyncResult.h"
13#include "mc/deps/core/utility/NonOwnerPointer.h"
14#include "mc/identity/IdentityEventResponse.h"
15#include "mc/identity/IdentityType.h"
16
17// auto generated forward declare list
18// clang-format off
19class CallbackToken;
21class IClientInstance;
22class IOptions;
23namespace Bedrock::PubSub { class Subscription; }
24namespace Core { class FileStorageArea; }
25namespace Core { class Path; }
26namespace Social { class IUserDataObject; }
27namespace Social { class Identity; }
28namespace Social { class PlatformImageService; }
29namespace Social { class ProfileImageOptions; }
30namespace Social { class UserData; }
31namespace Social { class UserManager; }
32namespace Social { class XboxLiveUser; }
33namespace Social { struct AuthToken; }
34namespace Social { struct MultiIdentitySigninResult; }
35namespace Social { struct PermissionCheckResult; }
36namespace Social { struct PlatformUserProfileData; }
37namespace Social { struct UserSignInProperties; }
38namespace mce { struct Image; }
39// clang-format on
40
41namespace Social {
42
43class User : public ::std::enable_shared_from_this<::Social::User> {
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 // vIndex: 0
48 virtual ~User() = default;
49
50 // vIndex: 1
51 virtual void initStorageAreas() = 0;
52
53 // vIndex: 2
54 virtual ::GameUserType getType() const = 0;
55
56 // vIndex: 3
57 virtual bool isPrimaryUser() const = 0;
58
59 // vIndex: 4
60 virtual bool isAnonymous() const = 0;
61
62 // vIndex: 5
63 virtual bool isConnected() const = 0;
64
65 // vIndex: 6
66 virtual bool isReady() const = 0;
67
68 // vIndex: 7
69 virtual bool needsPlatformReconnect() const = 0;
70
71 // vIndex: 8
72 virtual bool isSignedIn(::Social::IdentityType) const = 0;
73
74 // vIndex: 10
75 virtual bool isSignInInProgress(::Social::IdentityType) const = 0;
76
77 // vIndex: 9
78 virtual bool isSignInInProgress() const = 0;
79
80 // vIndex: 11
81 virtual bool signIn(::Social::UserSignInProperties const&) = 0;
82
83 // vIndex: 12
84 virtual void cancelSignIn(::Social::IdentityType) = 0;
85
86 // vIndex: 13
87 virtual void signOut(::Social::IdentityType, ::std::function<void(bool)>) = 0;
88
89 // vIndex: 14
90 virtual void clearCachedCredentials(::Social::IdentityType) = 0;
91
92 // vIndex: 15
93 virtual bool hasNetworkPrivileges() const = 0;
94
95 // vIndex: 16
96 virtual ::Bedrock::PubSub::Subscription registerIdentitySignInSubscriber(
97 ::Social::IdentityType,
98 ::std::function<void(uint, ::Social::IdentityType)>
99 ) = 0;
100
101 // vIndex: 17
102 virtual ::Bedrock::PubSub::Subscription registerIdentitySignOutSubscriber(
103 ::Social::IdentityType,
104 ::std::function<void(uint, ::Social::IdentityType)>
105 ) = 0;
106
107 // vIndex: 18
108 virtual ::CallbackToken connectAsync(::std::function<void(::Social::UserPlatformConnectionResult)>, bool) = 0;
109
110 // vIndex: 19
111 virtual void enterOfflineMode(::std::function<void(bool)>) = 0;
112
113 // vIndex: 20
114 virtual ::Social::UserPlatformConnectionState getPlatformConnectionState() const = 0;
115
116 // vIndex: 21
117 virtual uint getLocalUserId() const = 0;
118
119 // vIndex: 22
120 virtual ::std::string const& getId(::Social::IdentityType) const = 0;
121
122 // vIndex: 23
123 virtual ::std::string const& getMinecraftAccountID() const = 0;
124
125 // vIndex: 25
126 virtual void
127 getAuthToken(::Social::IdentityType, ::std::string const&, ::std::function<void(::Social::AuthToken)>) const = 0;
128
129 // vIndex: 24
130 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Social::AuthToken>>
131 getAuthToken(::Social::IdentityType, ::std::string const&) const = 0;
132
133 // vIndex: 26
134 virtual ::std::string const& getPlayFabSessionTicket() const = 0;
135
136 // vIndex: 27
137 virtual ::std::string const& getPlayFabEntityToken() const = 0;
138
139 // vIndex: 29
140 virtual ::std::shared_ptr<::Social::Identity> getIdentity(::Social::IdentityType) = 0;
141
142 // vIndex: 28
143 virtual ::std::shared_ptr<::Social::Identity const> const getIdentity(::Social::IdentityType) const = 0;
144
145 // vIndex: 30
146 virtual bool hasIdentity(::Social::IdentityType) const = 0;
147
148 // vIndex: 31
149 virtual void setShouldTransferDeviceAccountToXboxLive(bool const) = 0;
150
151 // vIndex: 32
152 virtual bool shouldLinkPlayFabAndLiveAccounts() const = 0;
153
154 // vIndex: 33
155 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<bool>> unlinkXboxLiveAccount() = 0;
156
157 // vIndex: 34
158 virtual void getUserDataObject(::Social::IUserDataObject&) const = 0;
159
160 // vIndex: 35
161 virtual void setUserDataObject(::Social::IUserDataObject const&) = 0;
162
163 // vIndex: 36
164 virtual ::Social::UserData const getUserData(::std::string const&) const = 0;
165
166 // vIndex: 37
167 virtual void setUserData(::std::string const&, ::Social::UserData const&) = 0;
168
169 // vIndex: 38
170 virtual void tick() = 0;
171
172 // vIndex: 39
173 virtual void finalize() = 0;
174
175 // vIndex: 40
176 virtual void disconnect() = 0;
177
178 // vIndex: 41
179 virtual void signOutFromPlatform() = 0;
180
181 // vIndex: 42
182 virtual bool isFinalized() const = 0;
183
184 // vIndex: 43
185 virtual ::CloudSaveSystemWrapper& getCloudSaveSystem() = 0;
186
187 // vIndex: 45
188 virtual ::std::string getDisplayName() const = 0;
189
190 // vIndex: 44
191 virtual ::std::string getDisplayName(::Social::IdentityType) const = 0;
192
193 // vIndex: 46
194 virtual ::std::shared_ptr<::Core::FileStorageArea> const getStorageArea() const = 0;
195
196 // vIndex: 47
197 virtual ::Core::Path getSettingsDirectoryPath() const = 0;
198
199 // vIndex: 48
200 virtual bool hasValidSettingsDirectoryPath() const = 0;
201
202 // vIndex: 49
203 virtual ::std::shared_ptr<::IOptions> const getOptions() const = 0;
204
205 // vIndex: 50
206 virtual ::Social::XboxLiveUser& getLiveUser() const = 0;
207
208 // vIndex: 51
209 virtual void setLiveUser(::std::unique_ptr<::Social::XboxLiveUser>) = 0;
210
211 // vIndex: 52
212 virtual void
213 checkPrivilegeWithUIAsync(int, ::std::string const&, ::std::function<void(::Social::PermissionCheckResult)>) = 0;
214
215 // vIndex: 53
216 virtual ::RelationshipStatus mayChatWith(::std::string const&) = 0;
217
218 // vIndex: 54
219 virtual bool mayChatWithMe(::std::string const&) const = 0;
220
221 // vIndex: 55
222 virtual bool isMutedPlayer(::std::string const&) = 0;
223
224 // vIndex: 56
225 virtual ::Social::PermissionCheckResult multiplayerAllowed() const = 0;
226
227 // vIndex: 57
228 virtual ::Social::PermissionCheckResult chatAllowed() const = 0;
229
230 // vIndex: 58
231 virtual ::Social::PermissionCheckResult addFriendAllowed() const = 0;
232
233 // vIndex: 59
234 virtual ::Social::PermissionCheckResult userGeneratedContentAllowed() const = 0;
235
236 // vIndex: 60
237 virtual ::Social::PermissionCheckResult createAndJoinClubsAllowed() const = 0;
238
239 // vIndex: 61
240 virtual ::Social::PermissionCheckResult viewingProfilesAllowed() const = 0;
241
242 // vIndex: 62
243 virtual ::Social::PermissionCheckResult uploadCapturesAllowed() const = 0;
244
245 // vIndex: 63
246 virtual bool isRemotePlatformUser() const = 0;
247
248 // vIndex: 64
249 virtual bool shouldClearChatOnJoinGame() const = 0;
250
251 // vIndex: 65
252 virtual int getGameControllerId() const = 0;
253
254 // vIndex: 66
255 virtual void setGameControllerId(int) = 0;
256
257 // vIndex: 67
258 virtual ::std::string getPlatformID() const = 0;
259
260 // vIndex: 68
261 virtual bool hasPremiumPlatformAccess() const = 0;
262
263 // vIndex: 69
264 virtual void checkPremiumPlatformStatusAsync(::std::function<void(bool)>) = 0;
265
266 // vIndex: 70
267 virtual bool hasPlatformIcons() const = 0;
268
269 // vIndex: 71
270 virtual bool hasPlatformProfileCards() const = 0;
271
272 // vIndex: 72
273 virtual void
274 getLinkedXuids(::std::function<void(::std::string, ::std::string)>, ::std::vector<::std::string> const&) = 0;
275
276 // vIndex: 73
277 virtual void
278 getLinkedPlatformIds(::std::function<void(::std::string, ::std::string)>, ::std::vector<::std::string> const&) = 0;
279
280 // vIndex: 74
281 virtual ::Social::PlatformImageService& getPlatformFriendsImageService() = 0;
282
283 // vIndex: 75
284 virtual void
285 getPlatformProfile(::std::string const&, ::std::function<void(::Social::PlatformUserProfileData&)>) = 0;
286
287 // vIndex: 76
288 virtual void getPlatformProfiles(
289 ::std::vector<::std::string> const&,
290 ::std::function<void(::std::vector<::Social::PlatformUserProfileData>&&)>
291 ) = 0;
292
293 // vIndex: 77
294 virtual ::Social::ProfileImageOptions getDefaultProfileImageOptions() const = 0;
295
296 // vIndex: 78
297 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::std::shared_ptr<::mce::Image>>>
298 getProfileImage(::Social::ProfileImageOptions const&) = 0;
299
300 // vIndex: 79
301 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Core::PathBuffer<::std::string>>>
302 getProfileImageFile(::Social::ProfileImageOptions const&) = 0;
303
304 // vIndex: 80
305 virtual bool canSignInToXBL() const = 0;
306
307 // vIndex: 81
308 virtual void setNeedsPlatformReconnect() = 0;
309
310 // vIndex: 82
311 virtual ::std::string getPlatformOfflineID() const = 0;
312
313 // vIndex: 83
314 virtual ::std::string getPlatformOnlineID() const = 0;
315
316 // vIndex: 84
317 virtual void associateClientInstance(::std::shared_ptr<::IClientInstance>) = 0;
318
319 // vIndex: 86
320 virtual ::std::weak_ptr<::IClientInstance> getAssociateClientInstance() = 0;
321
322 // vIndex: 85
323 virtual ::std::weak_ptr<::IClientInstance const> const getAssociateClientInstance() const = 0;
324
325 // vIndex: 87
326 virtual void setPresence(::std::string const&) = 0;
327
328 // vIndex: 88
329 virtual void clearPresence() = 0;
330
331 // vIndex: 89
332 virtual bool hasPlayedLegacyGame() const = 0;
333
334 // vIndex: 90
335 virtual bool getLegacyOptionsData(::std::vector<uchar>&) const = 0;
336
337 // vIndex: 91
338 virtual void onAppSuspend() = 0;
339
340 // vIndex: 92
341 virtual void onAppResumed() = 0;
342
343 // vIndex: 93
344 virtual bool isBanned() const = 0;
345
346 // vIndex: 94
347 virtual ::std::string const& getBanReason() const = 0;
348
349 // vIndex: 95
350 virtual ::std::string const& getBanExpiration() const = 0;
351
352 // vIndex: 96
353 virtual void initIdentity() = 0;
354
355 // vIndex: 97
356 virtual void setUserManager(::Bedrock::NonOwnerPointer<::Social::UserManager>) = 0;
357
358 // vIndex: 98
359 virtual void _onSignOut(::Social::IdentityType) = 0;
360
361 // vIndex: 99
362 virtual void _notifyIdentitiesOfSignIn(
363 ::std::shared_ptr<::Social::Identity>,
364 ::std::function<bool(::Social::IdentityEventResponse, ::std::shared_ptr<::Social::Identity>)>
365 ) = 0;
366
367 // vIndex: 100
368 virtual void _notifyIdentitySignInEventSubscribers(::Social::IdentityType) = 0;
369
370 // vIndex: 101
371 virtual void _notifyIdentitySignOutEventSubscribers(::Social::IdentityType) = 0;
372
373 // vIndex: 102
374 virtual void setStorageArea(::std::shared_ptr<::Core::FileStorageArea>, ::BuildPlatform) = 0;
375
376 // vIndex: 103
377 virtual void _postSignInSteps(::Social::MultiIdentitySigninResult, ::std::vector<::Social::IdentityType>&) = 0;
378
379 // vIndex: 104
380 virtual void _finalizeSignIn(
382 ::std::vector<::Social::IdentityType>&&,
383 ::std::set<::Social::IdentityType>&&
384 ) = 0;
385 // NOLINTEND
386
387public:
388 // virtual function thunks
389 // NOLINTBEGIN
390
391 // NOLINTEND
392};
393
394} // namespace Social
Definition NonOwnerPointer.h:9
Definition CallbackToken.h:5
Definition CloudSaveSystemWrapper.h:5
Definition IClientInstance.h:184
Definition IOptions.h:41
Definition Path.h:16
Definition IUserDataObject.h:12
Definition ProfileImageOptions.h:7
Definition UserData.h:7
Definition User.h:43
Definition AuthToken.h:10
Definition MultiIdentitySigninResult.h:7
Definition PermissionCheckResult.h:7
Definition PlatformUserProfileData.h:7
Definition UserSignInProperties.h:7