LeviLamina
Loading...
Searching...
No Matches
DirectoryPackAccessStrategy.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/Result.h"
7#include "mc/resources/PackAccessStrategy.h"
8#include "mc/resources/PackAccessStrategyType.h"
9
10// auto generated forward declare list
11// clang-format off
12class PackAssetSet;
15namespace Bedrock::Resources { class PreloadedPathHandle; }
16namespace Bedrock::Resources::Archive { class Reader; }
17namespace Core { class Path; }
18namespace Core { class PathView; }
19// clang-format on
20
21class DirectoryPackAccessStrategy : public ::PackAccessStrategy {
22public:
23 // member variables
24 // NOLINTBEGIN
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 DirectoryPackAccessStrategy& operator=(DirectoryPackAccessStrategy const&);
35 DirectoryPackAccessStrategy(DirectoryPackAccessStrategy const&);
36 DirectoryPackAccessStrategy();
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~DirectoryPackAccessStrategy() /*override*/;
42
43 virtual uint64 getPackSize() const /*override*/;
44
45 virtual ::ResourceLocation const& getPackLocation() const /*override*/;
46
47 virtual ::std::string const& getPackName() const /*override*/;
48
49 virtual bool isWritable() const /*override*/;
50
51 virtual bool isTrusted() const /*override*/;
52
53 virtual bool hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const
54 /*override*/;
55
56 virtual bool hasFolder(::Core::Path const& packRelativePath) const /*override*/;
57
58 virtual bool getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const
59 /*override*/;
60
61 virtual void forEachIn(
62 ::Core::Path const& packRelativePath,
63 ::std::function<void(::Core::Path const&)> callback,
64 bool recurseAnyways
65 ) const /*override*/;
66
67 virtual void
68 forEachInAssetSet(::Core::Path const& packRelativePath, ::std::function<void(::Core::Path const&)> callback) const
69 /*override*/;
70
71 virtual ::PackAccessStrategyType getStrategyType() const /*override*/;
72
73 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const& subPath) const /*override*/;
74
75 virtual bool canRecurse() const /*override*/;
76
77 virtual void unload() /*override*/;
78
79 virtual ::Bedrock::Result<::StreamableAssetSource>
80 getStreamableSource(::Core::Path const& packRelativePath, ::std::optional<::Core::PathView>) const /*override*/;
81
82 virtual ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
83 _loadArchive(::Core::Path const& packRelativePath) const /*override*/;
84
85 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
86 _preloadSubFolders(::Core::Path const& packRelativePath) const /*override*/;
87 // NOLINTEND
88
89public:
90 // member functions
91 // NOLINTBEGIN
93 ::ResourceLocation const& packLocation,
94 bool recurse,
95 ::std::function<::std::string(::Core::Path const&)> reader
96 );
97
99 ::std::unique_ptr<::PackAssetSet>&& assetSet,
100 ::ResourceLocation const& packLocation,
101 bool recurse,
102 ::std::function<::std::string(::Core::Path const&)> reader
103 );
104 // NOLINTEND
105
106public:
107 // constructor thunks
108 // NOLINTBEGIN
109 MCNAPI void* $ctor(
110 ::ResourceLocation const& packLocation,
111 bool recurse,
112 ::std::function<::std::string(::Core::Path const&)> reader
113 );
114
115 MCNAPI void* $ctor(
116 ::std::unique_ptr<::PackAssetSet>&& assetSet,
117 ::ResourceLocation const& packLocation,
118 bool recurse,
119 ::std::function<::std::string(::Core::Path const&)> reader
120 );
121 // NOLINTEND
122
123public:
124 // destructor thunk
125 // NOLINTBEGIN
126 MCNAPI void $dtor();
127 // NOLINTEND
128
129public:
130 // virtual function thunks
131 // NOLINTBEGIN
132 MCNAPI uint64 $getPackSize() const;
133
134 MCNAPI ::ResourceLocation const& $getPackLocation() const;
135
136 MCNAPI ::std::string const& $getPackName() const;
137
138 MCNAPI bool $isWritable() const;
139
140 MCNAPI bool $isTrusted() const;
141
142 MCNAPI bool $hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const;
143
144 MCNAPI bool $hasFolder(::Core::Path const& packRelativePath) const;
145
146 MCNAPI bool $getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const;
147
148 MCNAPI void $forEachIn(
149 ::Core::Path const& packRelativePath,
150 ::std::function<void(::Core::Path const&)> callback,
151 bool recurseAnyways
152 ) const;
153
154 MCNAPI void
155 $forEachInAssetSet(::Core::Path const& packRelativePath, ::std::function<void(::Core::Path const&)> callback) const;
156
157 MCNAPI ::PackAccessStrategyType $getStrategyType() const;
158
159 MCNAPI ::std::unique_ptr<::PackAccessStrategy> $createSubPack(::Core::Path const& subPath) const;
160
161 MCNAPI bool $canRecurse() const;
162
163 MCNAPI void $unload();
164
165 MCNAPI ::Bedrock::Result<::StreamableAssetSource>
166 $getStreamableSource(::Core::Path const& packRelativePath, ::std::optional<::Core::PathView>) const;
167
168 MCNAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
169 $_loadArchive(::Core::Path const& packRelativePath) const;
170
171 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
172 $_preloadSubFolders(::Core::Path const& packRelativePath) const;
173
174
175 // NOLINTEND
176
177public:
178 // vftables
179 // NOLINTBEGIN
180 MCNAPI static void** $vftable();
181 // NOLINTEND
182};
Definition PreloadedPathHandle.h:16
Definition PathView.h:19
Definition Path.h:12
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) const
MCAPI ::Bedrock::Result<::StreamableAssetSource > $getStreamableSource(::Core::Path const &packRelativePath, ::std::optional<::Core::PathView >) const
MCAPI DirectoryPackAccessStrategy(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI::ResourceLocation const & $getPackLocation() const
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader > $_loadArchive(::Core::Path const &packRelativePath) const
MCAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle > $_preloadSubFolders(::Core::Path const &packRelativePath) const
MCAPI::std::string const & $getPackName() const
MCAPI bool $hasAsset(::Core::Path const &packRelativePath, bool trustedContentOnly, bool caseSensative) const
MCAPI bool $canRecurse() const
MCAPI void * $ctor(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI bool $getAsset(::Core::Path const &packRelativePath, ::std::string &result, bool trustedContentOnly) const
MCAPI void $forEachIn(::Core::Path const &packRelativePath, ::std::function< void(::Core::Path const &)> callback, bool recurseAnyways) const
MCAPI DirectoryPackAccessStrategy(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI uint64 $getPackSize() const
MCAPI void $forEachInAssetSet(::Core::Path const &packRelativePath, ::std::function< void(::Core::Path const &)> callback) const
MCAPI void * $ctor(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI bool $isWritable() const
MCAPI bool $isTrusted() const
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
static MCAPI void ** $vftable()
Definition PackAssetSet.h:13
Definition ResourceLocation.h:15
Definition StreamableAssetSource.h:5
Definition Alias.h:14