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 FileHandlePool; }
18namespace Core { class Path; }
19namespace Core { class PathView; }
20// clang-format on
21
22class DirectoryPackAccessStrategy : public ::PackAccessStrategy {
23public:
24 // member variables
25 // NOLINTBEGIN
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 DirectoryPackAccessStrategy& operator=(DirectoryPackAccessStrategy const&);
36 DirectoryPackAccessStrategy(DirectoryPackAccessStrategy const&);
37 DirectoryPackAccessStrategy();
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual ~DirectoryPackAccessStrategy() /*override*/;
43
44 virtual uint64 getPackSize() const /*override*/;
45
46 virtual ::ResourceLocation const& getPackLocation() const /*override*/;
47
48 virtual ::std::string const& getPackName() const /*override*/;
49
50 virtual bool isWritable() const /*override*/;
51
52 virtual bool isTrusted() const /*override*/;
53
54 virtual bool hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const
55 /*override*/;
56
57 virtual bool hasFolder(::Core::Path const& packRelativePath) const /*override*/;
58
59 virtual bool getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const
60 /*override*/;
61
62 virtual void forEachIn(
63 ::Core::Path const& packRelativePath,
64 ::std::function<void(::Core::Path const&)> callback,
65 bool recurseAnyways
66 ) const /*override*/;
67
68 virtual ::PackAccessStrategyType getStrategyType() const /*override*/;
69
70 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const& subPath) const /*override*/;
71
72 virtual bool canRecurse() const /*override*/;
73
74 virtual void unload() /*override*/;
75
76 virtual ::Bedrock::Result<::StreamableAssetSource>
77 getStreamableSource(::Core::Path const& packRelativePath, ::std::optional<::Core::PathView> tempDirectory) const
78 /*override*/;
79
80 virtual ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
81 _loadArchive(::Core::Path const& packRelativePath) const /*override*/;
82
83 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
84 _preloadSubFolders(::Core::Path const& packRelativePath) const /*override*/;
85 // NOLINTEND
86
87public:
88 // member functions
89 // NOLINTBEGIN
91 ::ResourceLocation const& packLocation,
92 bool recurse,
93 ::std::function<::std::string(::Core::Path const&)> reader,
94 ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool>> handlePool
95 );
96
98 ::std::unique_ptr<::PackAssetSet>&& assetSet,
99 ::ResourceLocation const& packLocation,
100 bool recurse,
101 ::std::function<::std::string(::Core::Path const&)> reader,
102 ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool>> handlePool
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 ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool>> handlePool
114 );
115
116 MCNAPI void* $ctor(
117 ::std::unique_ptr<::PackAssetSet>&& assetSet,
118 ::ResourceLocation const& packLocation,
119 bool recurse,
120 ::std::function<::std::string(::Core::Path const&)> reader,
121 ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool>> handlePool
122 );
123 // NOLINTEND
124
125public:
126 // destructor thunk
127 // NOLINTBEGIN
128 MCNAPI void $dtor();
129 // NOLINTEND
130
131public:
132 // virtual function thunks
133 // NOLINTBEGIN
134 MCNAPI uint64 $getPackSize() const;
135
136 MCNAPI ::ResourceLocation const& $getPackLocation() const;
137
138 MCNAPI ::std::string const& $getPackName() const;
139
140 MCNAPI bool $isWritable() const;
141
142 MCNAPI bool $isTrusted() const;
143
144 MCNAPI bool $hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const;
145
146 MCNAPI bool $hasFolder(::Core::Path const& packRelativePath) const;
147
148 MCNAPI bool $getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const;
149
150 MCNAPI void $forEachIn(
151 ::Core::Path const& packRelativePath,
152 ::std::function<void(::Core::Path const&)> callback,
153 bool recurseAnyways
154 ) const;
155
156 MCNAPI ::PackAccessStrategyType $getStrategyType() const;
157
158 MCNAPI ::std::unique_ptr<::PackAccessStrategy> $createSubPack(::Core::Path const& subPath) const;
159
160 MCNAPI bool $canRecurse() const;
161
162 MCNAPI void $unload();
163
164 MCNAPI ::Bedrock::Result<::StreamableAssetSource>
165 $getStreamableSource(::Core::Path const& packRelativePath, ::std::optional<::Core::PathView> tempDirectory) const;
166
167 MCNAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
168 $_loadArchive(::Core::Path const& packRelativePath) const;
169
170 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
171 $_preloadSubFolders(::Core::Path const& packRelativePath) const;
172
173
174 // NOLINTEND
175};
Definition PreloadedPathHandle.h:16
Definition FileHandlePool.h:14
Definition PathView.h:19
Definition Path.h:11
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) const
MCAPI::ResourceLocation const & $getPackLocation() const
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader > $_loadArchive(::Core::Path const &packRelativePath) const
MCAPI DirectoryPackAccessStrategy(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader, ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool > > handlePool)
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 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(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader, ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool > > handlePool)
MCAPI void * $ctor(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader, ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool > > handlePool)
MCAPI uint64 $getPackSize() const
MCAPI bool $isWritable() const
MCAPI bool $isTrusted() const
MCAPI void * $ctor(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader, ::gsl::not_null<::std::shared_ptr<::Core::FileHandlePool > > handlePool)
MCAPI ::Bedrock::Result<::StreamableAssetSource > $getStreamableSource(::Core::Path const &packRelativePath, ::std::optional<::Core::PathView > tempDirectory) const
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
Definition PackAssetSet.h:14
Definition ResourceLocation.h:15
Definition StreamableAssetSource.h:5
Definition Alias.h:14