LeviLamina
Loading...
Searching...
No Matches
RealmWorldJoiner.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/network/realms/FailureReason.h"
7#include "mc/client/network/realms/GenericStatus.h"
8#include "mc/client/network/realms/RealmsAPI.h"
9#include "mc/client/world/JoinRealmWorldResult.h"
10#include "mc/deps/core/http/StatusCode.h"
11#include "mc/deps/core/utility/NonOwnerPointer.h"
12#include "mc/events/IMinecraftEventing.h"
13
14// auto generated forward declare list
15// clang-format off
16class AsyncTracker;
17class IAppPlatform;
18class IClientInstance;
21class ProgressHandler;
23struct RealmsAPI;
24namespace Realms { struct RealmId; }
25namespace Realms { struct World; }
26namespace Social { class GameConnectionInfo; }
27namespace Social { class IUserManager; }
28namespace World { struct RealmsJoinData; }
29// clang-format on
30
31namespace World {
32
33class RealmWorldJoiner {
34public:
35 // member variables
36 // NOLINTBEGIN
37 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClient;
38 ::ll::TypedStorage<8, 8, ::INetworkGameConnector&> mNetworkGameConnector;
39 ::ll::TypedStorage<8, 8, ::IGameServerShutdown&> mGameServerShutdown;
40 ::ll::TypedStorage<8, 8, ::IMinecraftEventing&> mMinecraftEventing;
41 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::RealmsAPI>> mRealmsAPI;
42 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::Social::IUserManager>> mUserManager;
43 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::IAppPlatform>> mAppPlatform;
44 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::AsyncTracker>> mAsyncTracker;
45 ::ll::TypedStorage<1, 1, bool> mJoinRealmWorldInProgress;
46 ::ll::TypedStorage<1, 1, bool> mIsEditorMode;
47 // NOLINTEND
48
49public:
50 // prevent constructor by default
51 RealmWorldJoiner& operator=(RealmWorldJoiner const&);
52 RealmWorldJoiner(RealmWorldJoiner const&);
53 RealmWorldJoiner();
54
55public:
56 // member functions
57 // NOLINTBEGIN
58 MCAPI RealmWorldJoiner(
59 ::IClientInstance& client,
60 ::INetworkGameConnector& networkGameConnector,
61 ::IGameServerShutdown& gameServerShutdown,
62 ::IMinecraftEventing& minecraftEventing,
63 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
64 ::Bedrock::NonOwnerPointer<::IAppPlatform> const& appPlatform,
65 ::std::weak_ptr<::RealmsAPI> realmsAPI
66 );
67
68 MCAPI ::World::JoinRealmWorldResult _fetchWorldByRealmId(
69 ::Realms::RealmId realmId,
70 ::IMinecraftEventing::RealmConnectionFlow fromFlow,
71 ::std::function<void(::std::unique_ptr<::ProgressHandler>, ::std::unique_ptr<::ProgressHandler>)>
72 onRealmFetched,
73 ::std::function<void(
74 ::IMinecraftEventing::RealmConnectionResult,
75 ::std::optional<::Realms::FailureReason>,
76 ::std::optional<::World::RealmsJoinData>
77 )> onRealmJoined
78 );
79
80 MCAPI void _joinRealm(
81 ::IMinecraftEventing::RealmConnectionFlow fromFlow,
82 ::Realms::World& world,
83 ::std::function<void(::std::unique_ptr<::ProgressHandler>, ::std::unique_ptr<::ProgressHandler>)>
84 onRealmFetchedCallback,
85 ::std::function<void(
86 ::IMinecraftEventing::RealmConnectionResult,
87 ::std::optional<::Realms::FailureReason>,
88 ::std::optional<::World::RealmsJoinData>
89 )> onRealmJoinedCallback
90 );
91
92 MCAPI void _joinRealmsWorld(
93 ::Realms::World world,
94 ::std::function<void(::Social::GameConnectionInfo const&, bool)> successCallback,
95 ::std::function<void(::Realms::GenericStatus, ::RealmsAPI::JoinStatus, ::Realms::FailureReason)> failCallback,
96 ::std::function<void(int)> retryCallback,
97 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
98 ::std::function<void(::IMinecraftEventing::RealmConnectionFlow)> broadcastConnectionEventRealmsRequestFunction,
99 ::std::function<void(::IMinecraftEventing::RealmConnectionFlow, ::Bedrock::Http::StatusCode)>
100 broadcastConnectionEventRealmsResponseFunction
101 );
102
103 MCAPI void joinRealmWorld(
104 ::Realms::RealmId realmId,
105 ::IMinecraftEventing::RealmConnectionFlow fromFlow,
106 ::std::function<void(::World::JoinRealmWorldResult)> onRealmResult,
107 ::std::function<void(::std::unique_ptr<::ProgressHandler>, ::std::unique_ptr<::ProgressHandler>)>
108 onRealmFetched,
109 ::std::function<void(
110 ::IMinecraftEventing::RealmConnectionResult,
111 ::std::optional<::Realms::FailureReason>,
112 ::std::optional<::World::RealmsJoinData>
113 )> onRealmJoined
114 );
115
116 MCAPI ~RealmWorldJoiner();
117 // NOLINTEND
118
119public:
120 // constructor thunks
121 // NOLINTBEGIN
122 MCAPI void* $ctor(
123 ::IClientInstance& client,
124 ::INetworkGameConnector& networkGameConnector,
125 ::IGameServerShutdown& gameServerShutdown,
126 ::IMinecraftEventing& minecraftEventing,
127 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
128 ::Bedrock::NonOwnerPointer<::IAppPlatform> const& appPlatform,
129 ::std::weak_ptr<::RealmsAPI> realmsAPI
130 );
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136 MCAPI void $dtor();
137 // NOLINTEND
138};
139
140} // namespace World
Definition AsyncTracker.h:5
Definition IAppPlatform.h:16
Definition IClientInstance.h:5
Definition IMinecraftEventing.h:137
Definition INetworkGameConnector.h:5
Definition ProgressHandler.h:5
Definition GameConnectionInfo.h:21
Definition IUserManager.h:34
Definition RealmWorldJoiner.h:7
Definition IGameServerShutdown.h:5
Definition RealmsAPI.h:5
Definition RealmId.h:7
Definition World.h:7
Definition RealmsJoinData.h:7