3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/controllers/MainMenuScreenController.h"
8#include "mc/client/services/clubs/ActivityFeed.h"
9#include "mc/client/services/clubs/ClubModel.h"
10#include "mc/client/social/PlatformUserProfileData.h"
11#include "mc/client/social/ProfileImageOptions.h"
12#include "mc/deps/core/file/PathBuffer.h"
13#include "mc/deps/core/threading/TaskGroup.h"
14#include "mc/platform/threading/Mutex.h"
20namespace Realms {
struct RealmId; }
21namespace Realms {
struct World; }
38 ::ll::TypedStorage<8, 32, ::std::string> mPlayerName;
39 ::ll::TypedStorage<8, 72, ::Social::ProfileImageOptions> mProfileImage;
45 MCAPI ~FeedPlayerInfo();
59 ::ll::TypedStorage<8, 8, ::Social::XboxLiveUserProfileData const*> mXboxUserProfileData;
60 ::ll::TypedStorage<8, 192, ::Social::PlatformUserProfileData> mPlatformUserProfileData;
61 ::ll::TypedStorage<1, 1, bool> mUsesLinkedProfile;
67 MCAPI ~LinkedPlatformUserProfileData();
80 ::ll::TypedStorage<8, 64, ::std::function<void(::std::string
const&,
bool)>> mScrollToControlCallback;
81 ::ll::TypedStorage<8, 64, ::Clubs::ActivityFeed> mFeed;
82 ::ll::TypedStorage<8, 32, ::std::vector<bool>> mHasScreenshotLoaded;
83 ::ll::TypedStorage<8, 128, ::Clubs::ClubModel> mClub;
84 ::ll::TypedStorage<1, 1, bool> mFeedLoading;
85 ::ll::TypedStorage<1, 1, bool> mFeedEmpty;
86 ::ll::TypedStorage<1, 1, bool> mShowLoading;
87 ::ll::TypedStorage<1, 1, bool> mCanLike;
88 ::ll::TypedStorage<1, 1, bool> mDirty;
89 ::ll::TypedStorage<1, 1, bool> mPlayerListInitialized;
90 ::ll::TypedStorage<1, 1, bool> mClubsInfoInitialized;
91 ::ll::TypedStorage<1, 1, bool> mUseLinkedAccounts;
92 ::ll::TypedStorage<1, 1, bool> mLoadingLinkedFriends;
93 ::ll::TypedStorage<1, 1, bool> mJustPosted;
94 ::ll::TypedStorage<4, 4, int> mNumFriendsToLoad;
95 ::ll::TypedStorage<4, 4, ::std::atomic<::ui::DirtyFlag>> mNextTickDirtyFlag;
96 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mAsyncPlayerProfileAccessMutex;
97 ::ll::TypedStorage<8, 64, ::std::unordered_set<::std::string>> mXuidsInFeed;
98 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::Core::PathBuffer<::std::string>>>
99 mScreenshotPathsInFeed;
100 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::ClubsBaseController::FeedPlayerInfo>> mPlayerList;
101 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::Social::XboxLiveUserProfileData>>
102 mAsyncPlayerProfiles;
103 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::Social::XboxLiveUserProfileData>> mPlayerProfiles;
104 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::ClubsBaseController::LinkedPlatformUserProfileData>>
105 mLinkedPlayerProfiles;
106 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mScreenshotLoadedMutex;
107 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mScreenshotPathMutex;
108 ::ll::TypedStorage<8, 8, ::Realms::World const&> mWorld;
109 ::ll::TypedStorage<8, 336, ::TaskGroup> mTaskGroup;
114 ClubsBaseController& operator=(ClubsBaseController
const&);
115 ClubsBaseController(ClubsBaseController
const&);
116 ClubsBaseController();
121 virtual ~ClubsBaseController() ;
123 virtual void onOpen() ;
125 virtual ::Clubs::FeedItem& _getFeedItem(
int const i);
127 virtual int _getFeedSize()
const;
129 virtual void _updateFeed();
131 virtual void _populateListsFromFeed();
137 MCAPI ClubsBaseController(::std::shared_ptr<::MainMenuScreenModel> model, ::Realms::World
const& world);
139 MCAPI
void _deleteFeedItem(::Clubs::FeedItem feedItem, ::Realms::RealmId realmId, ::std::string
const& clubId);
141 MCAPI
void _findLinkedAccount(::std::string xuid, ::std::string uuid);
143 MCAPI
void _loadScreenshotForItem(::Clubs::FeedItem& feedItem,
int index);
145 MCAPI
void _markMostRecentOwnPostViewed();
147 MCAPI
void _populatePlayerList();
149 MCAPI
void _requestLinkedAccounts();
151 MCAPI
void _requestPlayerProfiles();
153 MCAPI
void _retrieveLinkedAccountInfo(::std::string xuid, ::std::string uuid, ::std::string gamerTag);
159 MCAPI
void* $ctor(::std::shared_ptr<::MainMenuScreenModel> model, ::Realms::World
const& world);
171 MCAPI
void $onOpen();
173 MCAPI ::Clubs::FeedItem& $_getFeedItem(
int const i);
175 MCAPI
int $_getFeedSize()
const;
177 MCAPI
void $_updateFeed();
179 MCAPI
void $_populateListsFromFeed();
Definition ClubsBaseController.h:5
static MCAPI void ** $vftableForScreenController()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition ClubsBaseController.h:14
Definition XboxLiveUserProfileData.h:7