LeviLamina
Loading...
Searching...
No Matches
PackAccessStrategy.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/resources/PackAccessAssetGenerationResult.h"
8#include "mc/resources/PackAccessStrategyType.h"
9
10// auto generated forward declare list
11// clang-format off
12class ContentIdentity;
14namespace Bedrock::Resources { class PreloadedPathHandle; }
15namespace Bedrock::Resources::Archive { class Reader; }
16namespace Core { class Path; }
17namespace Json { class Value; }
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 PackAccessStrategy& operator=(PackAccessStrategy const&);
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 // vIndex: 0
37 virtual ~PackAccessStrategy();
38
39 // vIndex: 1
40 virtual uint64 getPackSize() const = 0;
41
42 // vIndex: 2
43 virtual ::ResourceLocation const& getPackLocation() const = 0;
44
45 // vIndex: 3
46 virtual ::std::string const& getPackName() const = 0;
47
48 // vIndex: 4
49 virtual bool isWritable() const = 0;
50
51 // vIndex: 5
52 virtual bool isTrusted() const = 0;
53
54 // vIndex: 6
55 virtual bool hasAsset(::Core::Path const&, bool, bool) const = 0;
56
57 // vIndex: 7
58 virtual bool hasFolder(::Core::Path const&) const = 0;
59
60 // vIndex: 8
61 virtual bool getAsset(::Core::Path const&, ::std::string&, bool) const = 0;
62
63 // vIndex: 9
64 virtual void forEachIn(::Core::Path const&, ::std::function<void(::Core::Path const&)>, bool) const = 0;
65
66 // vIndex: 10
67 virtual void forEachInAssetSet(::Core::Path const&, ::std::function<void(::Core::Path const&)>) const;
68
69 // vIndex: 11
70 virtual ::PackAccessStrategyType getStrategyType() const = 0;
71
72 // vIndex: 12
73 virtual ::Core::PathBuffer<::std::string> const& getSubPath() const;
74
75 // vIndex: 13
76 virtual bool supportsSignatureVerification() const;
77
78 // vIndex: 14
79 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const&) const = 0;
80
81 // vIndex: 15
82 virtual ::PackAccessAssetGenerationResult generateAssetSet();
83
84 // vIndex: 16
85 virtual ::PackAccessAssetGenerationResult regenerateAssetSet();
86
87 // vIndex: 17
88 virtual bool canRecurse() const;
89
90 // vIndex: 18
91 virtual void unload() = 0;
92
93 // vIndex: 19
94 virtual ::ContentIdentity readContentIdentity() const;
95
96 // vIndex: 20
97 virtual bool isAssetExtractionViable() const;
98
99 // vIndex: 21
100 virtual ::std::unique_ptr<::Bedrock::Resources::Archive::Reader> _loadArchive(::Core::Path const&) const;
101
102 // vIndex: 22
103 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle> _preloadSubFolders(::Core::Path const&) const;
104 // NOLINTEND
105
106public:
107 // member functions
108 // NOLINTBEGIN
110
111 MCNAPI void _forEachInAssetSet(::std::function<void(::Core::Path const&)> callback) const;
112
113 MCNAPI bool _isInAssetSet(::Core::Path const& path) const;
114
115 MCNAPI bool _isInAssetSetCaseInsensative(::Core::Path const& path) const;
116
118
119 MCNAPI ::Bedrock::Resources::PreloadedPathHandle preloadArchive(::Core::Path const& packRelativePath) const;
120
121 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
122 preloadPath(::Core::Path const& packRelativePath) const;
123 // NOLINTEND
124
125public:
126 // static variables
127 // NOLINTBEGIN
128 MCNAPI static ::Core::PathBuffer<::std::string> const& PACK_IMPORT_LOCK_FILE();
129 // NOLINTEND
130
131public:
132 // constructor thunks
133 // NOLINTBEGIN
134 MCNAPI void* $ctor();
135 // NOLINTEND
136
137public:
138 // destructor thunk
139 // NOLINTBEGIN
140 MCNAPI void $dtor();
141 // NOLINTEND
142
143public:
144 // virtual function thunks
145 // NOLINTBEGIN
146 MCNAPI void $forEachInAssetSet(::Core::Path const&, ::std::function<void(::Core::Path const&)>) const;
147
148 MCNAPI ::Core::PathBuffer<::std::string> const& $getSubPath() const;
149
151
152 MCNAPI ::PackAccessAssetGenerationResult $generateAssetSet();
153
154 MCNAPI ::PackAccessAssetGenerationResult $regenerateAssetSet();
155
156 MCNAPI bool $canRecurse() const;
157
158 MCNAPI ::ContentIdentity $readContentIdentity() const;
159
160 MCNAPI bool $isAssetExtractionViable() const;
161
162 MCNAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader> $_loadArchive(::Core::Path const&) const;
163
164 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle> $_preloadSubFolders(::Core::Path const&) const;
165 // NOLINTEND
166
167public:
168 // vftables
169 // NOLINTBEGIN
170 MCNAPI static void** $vftable();
171 // NOLINTEND
172};
Definition ContentIdentity.h:8
Definition Path.h:11
Definition Value.h:16
Definition PackAccessStrategy.h:20
MCAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle > $_preloadSubFolders(::Core::Path const &) const
MCAPI::Bedrock::Resources::PreloadedPathHandle preloadArchive(::Core::Path const &packRelativePath) const
MCAPI::ContentIdentity $readContentIdentity() const
MCAPI bool $canRecurse() const
static MCAPI void ** $vftable()
MCAPI void * $ctor()
MCAPI void $forEachInAssetSet(::Core::Path const &, ::std::function< void(::Core::Path const &)>) const
MCAPI bool $isAssetExtractionViable() const
MCAPI ::Core::PathBuffer<::std::string > const & $getSubPath() const
MCAPI void $dtor()
MCAPI bool _isInAssetSet(::Core::Path const &path) const
MCAPI void _upgradeContentsFile(::Json::Value &root)
MCAPI bool $supportsSignatureVerification() const
MCAPI::PackAccessAssetGenerationResult $regenerateAssetSet()
MCAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader > $_loadArchive(::Core::Path const &) const
MCAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle > preloadPath(::Core::Path const &packRelativePath) const
MCAPI void _forEachInAssetSet(::std::function< void(::Core::Path const &)> callback) const
MCAPI::PackAccessAssetGenerationResult $generateAssetSet()
static MCAPI ::Core::PathBuffer<::std::string > const & PACK_IMPORT_LOCK_FILE()
MCAPI PackAccessStrategy()
MCAPI bool _isInAssetSetCaseInsensative(::Core::Path const &path) const
Definition Path.h:16
Definition ResourceLocation.h:14
Definition Alias.h:14