LeviLamina
Loading...
Searching...
No Matches
IResourcePackRepository.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/deps/core/resource/PackCategory.h"
8#include "mc/deps/core/resource/PackOrigin.h"
9#include "mc/deps/core/resource/PackType.h"
10#include "mc/deps/core/threading/Async.h"
11#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
12#include "mc/deps/core/utility/NonOwnerPointer.h"
13
14// auto generated forward declare list
15// clang-format off
16class ContentIdentity;
19class PackInstance;
25class ResourcePack;
28struct PackIdVersion;
29struct PackInstanceId;
30namespace Core { class Path; }
31namespace mce { class UUID; }
32// clang-format on
33
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~IResourcePackRepository() /*override*/;
39
40 virtual void
41 getResourcePacksByPackId(::std::vector<::PackInstanceId> const&, ::std::vector<::PackInstance>&) const = 0;
42
43 virtual ::std::shared_ptr<::ResourcePack> getResourcePackForPackId(::PackIdVersion const&) const = 0;
44
45 virtual ::ResourcePack* getResourcePackOfDifferentVersionForPackId(::PackIdVersion const&) const = 0;
46
47 virtual ::ResourcePack* getResourcePackForPackIdInPath(::PackIdVersion const&, ::Core::Path const&) const = 0;
48
49 virtual ::ResourcePack* getResourcePackByUUID(::mce::UUID const&) const = 0;
50
51 virtual ::ResourcePack* getResourcePackForPackIdOwned(::PackIdVersion const&) const = 0;
52
53 virtual ::std::shared_ptr<::ResourcePack> getResourcePackSatisfiesPackId(::PackIdVersion const&, bool) const = 0;
54
55 virtual ::ResourcePack* getResourcePackContainingModule(::PackIdVersion const&) const = 0;
56
57 virtual ::Bedrock::Threading::Async<::std::shared_ptr<::ResourcePack>>
58 getResourcePackInPath(::Core::Path const&) const = 0;
59
60 virtual bool isResourcePackLoaded(::PackIdVersion const&, ::PackOrigin const&) = 0;
61
62 virtual ::PackSourceReport const* getPackLoadingReport() const = 0;
63
64 virtual ::std::shared_ptr<::ResourcePack> getEditorPack() const = 0;
65
66 virtual ::std::shared_ptr<::ResourcePack> getVanillaPack() const = 0;
67
68 virtual bool setServicePacks(::std::vector<::PackIdVersion>) = 0;
69
70 virtual bool hasServicePacks(::std::vector<::PackIdVersion> const&) const = 0;
71
72 virtual ::std::vector<::PackIdVersion> const& getServicePacks() const = 0;
73
74 virtual void addServicePacksToStack(::ResourcePackStack&) const = 0;
75
76 virtual void addCachedResourcePacks(::std::unordered_map<::ContentIdentity, ::std::string> const*) = 0;
77
78 virtual void addWorldResourcePacks(::Core::Path const&) = 0;
79
80 virtual void addPremiumWorldTemplateResourcePacks(::Core::Path const&, ::ContentIdentity const&) = 0;
81
82 virtual void addWorldPackSource(::Core::Path const&) = 0;
83
84 virtual void addPremiumWorldTemplatePackSource(::Core::Path const&, ::ContentIdentity const&) = 0;
85
86 virtual void addTempWorldTemplateResourcePacks(::mce::UUID const&) = 0;
87
88 virtual void removePacksLoadedFromCache() = 0;
89
90 virtual void removePacksLoadedFromWorld() = 0;
91
92 virtual ::Core::PathBuffer<::std::string> const getResourcePacksPath() const = 0;
93
94 virtual ::Core::PathBuffer<::std::string> const getBehaviorPacksPath() const = 0;
95
96 virtual ::Core::PathBuffer<::std::string> const getSkinPacksPath() const = 0;
97
98 virtual ::Core::PathBuffer<::std::string> const getDevelopmentResourcePacksPath() const = 0;
99
100 virtual ::Core::PathBuffer<::std::string> const getDevelopmentBehaviorPacksPath() const = 0;
101
102 virtual ::Core::PathBuffer<::std::string> const getDevelopmentSkinPacksPath() const = 0;
103
104 virtual ::Core::PathBuffer<::std::string> const getTreatmentPacksPath() const = 0;
105
106 virtual void refreshPacks() = 0;
107
108 virtual ::Bedrock::Threading::Async<void> refreshPacksAsync() = 0;
109
110 virtual void requestReloadUserPacks() = 0;
111
112 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> getKeyProvider() const = 0;
113
114 virtual ::PackManifestFactory& getPackManifestFactory() = 0;
115
116 virtual ::PackSettingsFactory& getPackSettingsFactory() const = 0;
117
118 virtual ::PackSourceFactory& getPackSourceFactory() = 0;
119
120 virtual ::std::vector<::ResourcePack*> getPacksByResourceLocation(::PackOrigin) const = 0;
121
122 virtual ::std::vector<::ResourcePack*> getPacksByType(::PackType) const = 0;
123
124 virtual ::std::vector<::gsl::not_null<::std::shared_ptr<::ResourcePack>>>
125 getPacksByCategory(::PackCategory) const = 0;
126
127 virtual void forEachPack(::std::function<void(::ResourcePack const&)> const&) const = 0;
128
129 virtual ::std::vector<::ResourceLocation> const& getInvalidPacks(::PackType) const = 0;
130
131 virtual ::std::vector<::ResourceLocation> getInvalidPacks(::InvalidPacksFilterGroup const&) const = 0;
132
133 virtual void deletePack(::ResourceLocation const&) = 0;
134
135 virtual void deletePackFiles(::ResourceLocation const&) = 0;
136
137 virtual void postDeletePack(::ResourceLocation const&) = 0;
138
139 virtual void untrackInvalidPack(::ResourceLocation const&) = 0;
140
141 virtual bool isInitialized() const = 0;
142
143 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentSourceRepository> getContentSourceRepository() = 0;
144 // NOLINTEND
145
146public:
147 // destructor thunk
148 // NOLINTBEGIN
149 MCNAPI void $dtor();
150 // NOLINTEND
151
152public:
153 // virtual function thunks
154 // NOLINTBEGIN
155
156 // NOLINTEND
157};
Definition EnableNonOwnerReferences.h:7
Definition ContentIdentity.h:8
Definition Path.h:10
Definition IContentKeyProvider.h:13
Definition IContentSourceRepository.h:13
Definition IResourcePackRepository.h:34
Definition PackInstance.h:16
Definition PackManifestFactory.h:20
Definition PackSettingsFactory.h:23
Definition PackSourceFactory.h:33
Definition PackSourceReport.h:11
Definition ResourceLocation.h:15
Definition ResourcePackStack.h:25
Definition ResourcePack.h:21
Definition UUID.h:7
Definition InvalidPacksFilterGroup.h:5
Definition PackIdVersion.h:10
Definition PackInstanceId.h:8