Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
DirectoryPackWithEncryptionAccessStrategy.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/platform/Result.h"
8#include "mc/resources/PackAccessAssetGenerationResult.h"
9#include "mc/resources/PackAccessStrategy.h"
10#include "mc/resources/PackAccessStrategyType.h"
11
12// auto generated forward declare list
13// clang-format off
14class ContentIdentity;
16class IFileAccess;
17class IPackIOProvider;
20namespace Core { class Path; }
21namespace Core { class PathView; }
22// clang-format on
23
24class DirectoryPackWithEncryptionAccessStrategy : public ::PackAccessStrategy {
25public:
26 // member variables
27 // NOLINTBEGIN
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 DirectoryPackWithEncryptionAccessStrategy& operator=(DirectoryPackWithEncryptionAccessStrategy const&);
42 DirectoryPackWithEncryptionAccessStrategy(DirectoryPackWithEncryptionAccessStrategy const&);
43 DirectoryPackWithEncryptionAccessStrategy();
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 virtual ~DirectoryPackWithEncryptionAccessStrategy() /*override*/ = default;
49
50 virtual uint64 getPackSize() const /*override*/;
51
52 virtual ::ResourceLocation const& getPackLocation() const /*override*/;
53
54 virtual ::std::string const& getPackName() const /*override*/;
55
56 virtual bool isWritable() const /*override*/;
57
58 virtual bool isTrusted() const /*override*/;
59
60 virtual bool hasAsset(::Core::PathView const& packRelativePath, bool trustedContentOnly, bool caseSensative) const
61 /*override*/;
62
63 virtual bool hasFolder(::Core::Path const& packRelativePath) const /*override*/;
64
65 virtual bool
66 getAsset(::Core::PathView const& packRelativePath, ::std::string& result, bool trustedContentOnly) const
67 /*override*/;
68
69 virtual void
70 forEachIn(::Core::Path const& packRelativePath, ::std::function<void(::Core::Path const&)> callback, bool) const
71 /*override*/;
72
73 virtual ::PackAccessStrategyType getStrategyType() const /*override*/;
74
75 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const& subPath) const /*override*/;
76
77 virtual ::PackAccessAssetGenerationResult generateAssetSet() /*override*/;
78
79 virtual void unload() /*override*/;
80
81 virtual ::ContentIdentity readContentIdentity() const /*override*/;
82
83 virtual ::Bedrock::Result<::StreamableAssetSource>
84 getStreamableSource(::Core::Path const&, ::std::optional<::Core::PathView>) const /*override*/;
85 // NOLINTEND
86
87public:
88 // member functions
89 // NOLINTBEGIN
91 ::ResourceLocation const& packLocation,
92 ::ResourceLocation const& encryptedContentLocation,
93 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
94 ::IFileAccess& fileAccess,
95 ::IPackIOProvider const& io
96 );
97 // NOLINTEND
98
99public:
100 // constructor thunks
101 // NOLINTBEGIN
102 MCNAPI void* $ctor(
103 ::ResourceLocation const& packLocation,
104 ::ResourceLocation const& encryptedContentLocation,
105 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
106 ::IFileAccess& fileAccess,
107 ::IPackIOProvider const& io
108 );
109 // NOLINTEND
110
111public:
112 // virtual function thunks
113 // NOLINTBEGIN
114 MCNAPI uint64 $getPackSize() const;
115
116 MCNAPI ::ResourceLocation const& $getPackLocation() const;
117
118 MCNAPI ::std::string const& $getPackName() const;
119
120 MCNAPI bool $isWritable() const;
121
122 MCNAPI bool $isTrusted() const;
123
124 MCNAPI bool $hasAsset(::Core::PathView const& packRelativePath, bool trustedContentOnly, bool caseSensative) const;
125
126 MCNAPI bool $hasFolder(::Core::Path const& packRelativePath) const;
127
128 MCNAPI bool
129 $getAsset(::Core::PathView const& packRelativePath, ::std::string& result, bool trustedContentOnly) const;
130
131 MCNAPI void
132 $forEachIn(::Core::Path const& packRelativePath, ::std::function<void(::Core::Path const&)> callback, bool) const;
133
134 MCNAPI ::PackAccessStrategyType $getStrategyType() const;
135
136 MCNAPI ::std::unique_ptr<::PackAccessStrategy> $createSubPack(::Core::Path const& subPath) const;
137
138 MCNAPI ::PackAccessAssetGenerationResult $generateAssetSet();
139
140 MCNAPI void $unload();
141
142 MCNAPI ::ContentIdentity $readContentIdentity() const;
143
144 MCNAPI ::Bedrock::Result<::StreamableAssetSource>
145 $getStreamableSource(::Core::Path const&, ::std::optional<::Core::PathView>) const;
146
147
148 // NOLINTEND
149};
Definition ContentIdentity.h:8
Definition PathView.h:19
Definition Path.h:10
MCAPI::std::string const & $getPackName() const
MCAPI ::Bedrock::Result<::StreamableAssetSource > $getStreamableSource(::Core::Path const &, ::std::optional<::Core::PathView >) const
MCAPI::PackAccessAssetGenerationResult $generateAssetSet()
MCAPI::ContentIdentity $readContentIdentity() const
MCAPI DirectoryPackWithEncryptionAccessStrategy(::ResourceLocation const &packLocation, ::ResourceLocation const &encryptedContentLocation, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, ::IFileAccess &fileAccess, ::IPackIOProvider const &io)
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
MCAPI bool $getAsset(::Core::PathView const &packRelativePath, ::std::string &result, bool trustedContentOnly) const
MCAPI void $forEachIn(::Core::Path const &packRelativePath, ::std::function< void(::Core::Path const &)> callback, bool) const
MCAPI bool $hasAsset(::Core::PathView const &packRelativePath, bool trustedContentOnly, bool caseSensative) const
MCAPI void * $ctor(::ResourceLocation const &packLocation, ::ResourceLocation const &encryptedContentLocation, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, ::IFileAccess &fileAccess, ::IPackIOProvider const &io)
MCAPI::ResourceLocation const & $getPackLocation() const
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) const
Definition IContentKeyProvider.h:13
Definition IFileAccess.h:15
Definition IPackIOProvider.h:19
Definition ResourceLocation.h:15
Definition StreamableAssetSource.h:5
Definition Alias.h:14