LeviLamina
Loading...
Searching...
No Matches
IUserManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/options/PlayFabEnvironment.h"
7#include "mc/client/social/MultiplayerServiceIdentifier.h"
8#include "mc/client/social/UserPlatformConnectionResult.h"
9#include "mc/common/GameUserType.h"
10#include "mc/deps/core/threading/IAsyncResult.h"
11#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
12#include "mc/deps/core/utility/NonOwnerPointer.h"
13#include "mc/deps/core/utility/Subject.h"
14#include "mc/identity/IdentityType.h"
15
16// auto generated forward declare list
17// clang-format off
18class IClientInstance;
19class ILevelListCache;
20class IMinecraftGame;
21class Options;
23namespace Bedrock::PubSub { class Subscription; }
24namespace Core { class SingleThreadedLock; }
25namespace Social { class MultiplayerServiceObserver; }
26namespace Social { class ProfileImageOptions; }
27namespace Social { class User; }
28namespace Social { class UserListObserver; }
29namespace Social { class XboxLiveUser; }
30namespace mce { struct Image; }
31// clang-format on
32
33namespace Social {
34
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 // vIndex: 0
40 virtual ~IUserManager() /*override*/ = default;
41
42 // vIndex: 1
43 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<void>>
44 createPrimaryUserAsync(::std::shared_ptr<::Options>) = 0;
45
46 // vIndex: 2
47 virtual void initPrimaryIdentity() = 0;
48
49 // vIndex: 3
50 virtual ::std::shared_ptr<::Social::User> getPrimaryUser() const = 0;
51
52 // vIndex: 4
53 virtual bool isSecondaryUserCreationAllowed(int) const = 0;
54
55 // vIndex: 5
56 virtual void setSecondaryUserCreationAllowed(int) = 0;
57
58 // vIndex: 6
59 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<void>>
60 addSecondaryUserAsync(int, ::std::shared_ptr<::Options>, ::std::function<void(::Social::UserPlatformConnectionResult)>) = 0;
61
62 // vIndex: 7
63 virtual bool controllerChanged(int&, int&) = 0;
64
65 // vIndex: 8
66 virtual bool canChangePrimaryUserFromStartMenuScreen() const = 0;
67
68 // vIndex: 9
69 virtual void getAsyncUserSelection(::std::function<void(int)>, int) = 0;
70
71 // vIndex: 10
72 virtual void getAsyncUserSelectionForNewPrimaryUser(int, bool) = 0;
73
74 // vIndex: 11
75 virtual void forceCloudSaveOnWorld(::std::string const&) = 0;
76
77 // vIndex: 12
78 virtual ::Core::Subject<::Social::UserListObserver, ::Core::SingleThreadedLock>& getUserListSubject() = 0;
79
80 // vIndex: 13
81 virtual bool isPrimaryUserReady() = 0;
82
83 // vIndex: 14
84 virtual bool canAccessPlayScreen() = 0;
85
86 // vIndex: 15
87 virtual bool needToShowPlatformStoreConnectConfirmationScreen() = 0;
88
89 // vIndex: 16
90 virtual bool canAccessSettingsScreen() = 0;
91
92 // vIndex: 17
93 virtual bool canAccessAchievementsScreen() = 0;
94
95 // vIndex: 18
96 virtual bool canAccessSkinScreen() = 0;
97
98 // vIndex: 19
99 virtual bool canAccessStoreScreen() = 0;
100
101 // vIndex: 20
102 virtual bool canAccessRealmsPendingInvitesScreen() = 0;
103
104 // vIndex: 21
105 virtual bool canHandleInvites() = 0;
106
107 // vIndex: 22
108 virtual bool needPlatformConnectionBeforeXBLSignIn() = 0;
109
110 // vIndex: 23
111 virtual bool needPlatformConnectionForMultiplayer() const = 0;
112
113 // vIndex: 24
114 virtual bool needPlatformConnectionForSplitScreenMultiplayer() const = 0;
115
116 // vIndex: 25
117 virtual bool needPlatformConnectionBeforeServerSearch() const = 0;
118
119 // vIndex: 26
120 virtual bool needsAsyncUserSelection(int, bool) = 0;
121
122 // vIndex: 27
123 virtual bool hasPlatformIcons() const = 0;
124
125 // vIndex: 28
126 virtual bool hasPlatformProfileCards() const = 0;
127
128 // vIndex: 29
129 virtual void
130 getLinkedXuids(::std::function<void(::std::string, ::std::string)>, ::std::vector<::std::string> const&) const = 0;
131
132 // vIndex: 30
133 virtual void
134 getLinkedPlatformIds(::std::function<void(::std::string, ::std::string)>, ::std::vector<::std::string> const&)
135 const = 0;
136
137 // vIndex: 31
138 virtual void onAppResumed() = 0;
139
140 // vIndex: 32
141 virtual void onAppSuspended() = 0;
142
143 // vIndex: 33
144 virtual void onAppFocusLost() = 0;
145
146 // vIndex: 34
147 virtual void removeUser(int, bool) = 0;
148
149 // vIndex: 35
150 virtual void removeClient(::std::shared_ptr<::IClientInstance> const&) = 0;
151
152 // vIndex: 36
153 virtual void setUserClient(int, ::std::shared_ptr<::IClientInstance> const&) = 0;
154
155 // vIndex: 37
156 virtual bool userHasClient(int) = 0;
157
158 // vIndex: 38
159 virtual ::Social::PlayFabEnvironment getEnvironment() const = 0;
160
161 // vIndex: 39
162 virtual ::std::string_view getPlayFabTitleId() const = 0;
163
164 // vIndex: 40
165 virtual ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> retrieveCIDToClientMap() = 0;
166
167 // vIndex: 41
168 virtual int getClientCID(::IClientInstance const&) const = 0;
169
170 // vIndex: 42
171 virtual void registerSignOutListener(::Core::CallbackListeners<int, ::Social::SignInResult>::Listener const&) = 0;
172
173 // vIndex: 43
174 virtual void registerSignInListener(::Core::CallbackListeners<int, ::Social::SignInResult>::Listener const&) = 0;
175
176 // vIndex: 44
177 virtual ::Bedrock::PubSub::Subscription
178 registerIdentitySignInCallback(::Social::IdentityType, ::std::function<void(uint, ::Social::IdentityType)>) = 0;
179
180 // vIndex: 45
181 virtual ::Bedrock::PubSub::Subscription
182 registerIdentitySignOutCallback(::Social::IdentityType, ::std::function<void(uint, ::Social::IdentityType)>) = 0;
183
184 // vIndex: 46
185 virtual ::Bedrock::PubSub::Subscription
186 registerProfileImageChangedCallback(::std::function<
187 void(::Social::ProfileImageOptions, ::std::shared_ptr<::mce::Image>)>) = 0;
188
189 // vIndex: 47
190 virtual bool needGamepadDisconnectScreen(int) = 0;
191
192 // vIndex: 48
193 virtual void tick(::IMinecraftGame&) = 0;
194
195 // vIndex: 49
196 virtual void updateMapping(bool, bool) = 0;
197
198 // vIndex: 51
199 virtual ::std::shared_ptr<::Social::User> getUser(::IClientInstance const&) const = 0;
200
201 // vIndex: 50
202 virtual ::std::shared_ptr<::Social::User> getUser(::Social::XboxLiveUser const&) = 0;
203
204 // vIndex: 52
205 virtual ::std::shared_ptr<::Social::User> getUserFromControllerId(int) const = 0;
206
207 // vIndex: 54
208 virtual ::std::shared_ptr<::Social::User> getUserFromUserId(uint) = 0;
209
210 // vIndex: 53
211 virtual ::std::shared_ptr<::Social::User const> const getUserFromUserId(uint) const = 0;
212
213 // vIndex: 55
214 virtual ::GameUserType getUserTypeFromUserId(uint) const = 0;
215
216 // vIndex: 56
217 virtual bool isChatAllowedWhenBlockedByPlatform() const = 0;
218
219 // vIndex: 57
220 virtual ::std::vector<::std::shared_ptr<::Social::User>> const& getUsers() const = 0;
221
222 // vIndex: 58
223 virtual bool isUserSignedIn(uint) = 0;
224
225 // vIndex: 59
226 virtual bool isPrimaryUserInitialSignInInProgress() const = 0;
227
228 // vIndex: 60
229 virtual void registerLevelLocationObserver(::ILevelListCache&) = 0;
230
231 // vIndex: 61
232 virtual ::Social::MultiplayerServiceObserver& getMultiplayerServiceObserver() = 0;
233
234 // vIndex: 62
235 virtual ::Social::MultiplayerServiceIdentifier getPlatformMultiplayerServiceIdentifier() const = 0;
236
237 // vIndex: 63
238 virtual bool willSyncUserDataStorage() const = 0;
239 // NOLINTEND
240
241public:
242 // destructor thunk
243 // NOLINTBEGIN
244
245 // NOLINTEND
246
247public:
248 // virtual function thunks
249 // NOLINTBEGIN
250
251 // NOLINTEND
252};
253
254} // namespace Social
Definition EnableNonOwnerReferences.h:7
Definition _HeaderOutputPredefine.h:220
Definition IClientInstance.h:179
Definition ILevelListCache.h:27
Definition IMinecraftGame.h:164
Definition Options.h:32
Definition IUserManager.h:35
Definition ProfileImageOptions.h:7
Definition XboxLiveUser.h:7
Definition ControllerIDtoClientMap.h:8