LeviLamina
Loading...
Searching...
No Matches
SDLSkinPackCollectionModel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/models/DlcBatchCacheModel.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12class SkinPackModel;
13struct DlcId;
15struct IEntitlementManager;
16struct ISkinRepository;
18struct IStoreCatalogItem;
19struct IStoreCatalogRepository;
21namespace mce { class UUID; }
22namespace persona { struct DlcImportTracker; }
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 72, ::DlcBatchCacheModel> mDlcBatchCacheModel;
30 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ISkinRepository>> mSkinRepository;
31 ::ll::TypedStorage<8, 8, ::SkinRepositoryClientInterface&> mSkinRepositoryClientInterface;
32 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager>> mEntitlementManager;
33 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IStoreCatalogRepository>> mStoreCatalogRepository;
34 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::persona::DlcImportTracker>>> mTrackedImports;
35 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::SkinPackModel>>> mSkinPacks;
36 ::ll::TypedStorage<8, 8, uint64> mStartFetchIndex;
37 ::ll::TypedStorage<8, 8, uint64> mVisibleEndRange;
38 ::ll::TypedStorage<4, 4, uint> mVisiblePacks;
39 ::ll::TypedStorage<4, 4, uint> mMaxPacksPerFetch;
40 ::ll::TypedStorage<4, 4, int> mSideLoadedPacksCollected;
41 // NOLINTEND
42
43public:
44 // prevent constructor by default
45 SDLSkinPackCollectionModel& operator=(SDLSkinPackCollectionModel const&);
46 SDLSkinPackCollectionModel(SDLSkinPackCollectionModel const&);
47 SDLSkinPackCollectionModel();
48
49public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI SDLSkinPackCollectionModel(
53 ::Bedrock::NotNullNonOwnerPtr<::IContentAcquisition> contentAcquisition,
54 ::Bedrock::NotNullNonOwnerPtr<::IStoreCatalogRepository> storeCatalog,
55 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
56 ::std::shared_ptr<::ISkinRepository> skinRepository,
57 ::ISkinRepositoryClientInterface& skinRepositoryClientInterface
58 );
59
60 MCAPI void _addSkinPackModel(::mce::UUID const& packId, int index);
61
62 MCAPI void _collectLegacySkins();
63
64 MCAPI void _extractDlcIdFromOffer(::std::vector<::DlcId>& dlcIds, ::IStoreCatalogItem const& calatogItem);
65
66 MCAPI uint64 collectLegacyAndSideLoadedSkinPacks();
67
68 MCAPI void collectOffers(::std::vector<::gsl::not_null<::IStoreCatalogItem*>> const& offers);
69
70 MCAPI uint64 collectSkinsForOffline(bool collectOwnedSkins, ::mce::UUID const& packId);
71
72 MCAPI void tick(::ui::DirtyFlag& dirtyFlags);
73
74 MCAPI ~SDLSkinPackCollectionModel();
75 // NOLINTEND
76
77public:
78 // constructor thunks
79 // NOLINTBEGIN
80 MCAPI void* $ctor(
81 ::Bedrock::NotNullNonOwnerPtr<::IContentAcquisition> contentAcquisition,
82 ::Bedrock::NotNullNonOwnerPtr<::IStoreCatalogRepository> storeCatalog,
83 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
84 ::std::shared_ptr<::ISkinRepository> skinRepository,
85 ::ISkinRepositoryClientInterface& skinRepositoryClientInterface
86 );
87 // NOLINTEND
88
89public:
90 // destructor thunk
91 // NOLINTBEGIN
92 MCAPI void $dtor();
93 // NOLINTEND
94};
Definition SDLSkinPackCollectionModel.h:5
Definition SkinPackModel.h:5
Definition UUID.h:7
Definition DlcId.h:5
Definition IContentAcquisition.h:5
Definition ISkinRepositoryClientInterface.h:5
Definition ISkinRepository.h:5
Definition SkinRepositoryClientInterface.h:5
Definition DlcImportTracker.h:7