LeviLamina
Loading...
Searching...
No Matches
ZippedEncryptedFilesAccessStrategy.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/utility/NonOwnerPointer.h"
8#include "mc/resources/EncryptedFileAccessStrategy.h"
9#include "mc/resources/PackAccessStrategyType.h"
10
11// auto generated forward declare list
12// clang-format off
13class ContentIdentity;
15class IPackIOProvider;
18namespace Bedrock::Resources { class PreloadedPathHandle; }
19namespace Core { class Path; }
20// clang-format on
21
22class ZippedEncryptedFilesAccessStrategy : public ::EncryptedFileAccessStrategy {
23public:
24 // member variables
25 // NOLINTBEGIN
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 ZippedEncryptedFilesAccessStrategy& operator=(ZippedEncryptedFilesAccessStrategy const&);
34 ZippedEncryptedFilesAccessStrategy(ZippedEncryptedFilesAccessStrategy const&);
35 ZippedEncryptedFilesAccessStrategy();
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ::ResourceLocation const& getPackLocation() const /*override*/;
41
42 virtual bool hasFolder(::Core::Path const& packRelativePath) const /*override*/;
43
44 virtual void forEachIn(
45 ::Core::Path const& packRelativePath,
46 ::std::function<void(::Core::Path const&)> callback,
47 bool recurseAnyways
48 ) const /*override*/;
49
50 virtual ::PackAccessStrategyType getStrategyType() const /*override*/;
51
52 virtual ::Core::PathBuffer<::std::string> const& getSubPath() const /*override*/;
53
54 virtual bool supportsSignatureVerification() const /*override*/;
55
56 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const& subPath) const /*override*/;
57
58 virtual ::std::string _getContentsFile() /*override*/;
59
60 virtual ::std::string _getEncryptedAssetStream(::Core::Path const& packRelativePath) const /*override*/;
61
62 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
63 _preloadSubFolders(::Core::Path const& packRelativePath) const /*override*/;
64 // NOLINTEND
65
66public:
67 // member functions
68 // NOLINTBEGIN
70 ::ResourceLocation const& archiveLocation,
71 ::ContentIdentity const& contentIdentity,
72 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
73 ::IPackIOProvider const& io,
74 ::Core::Path const& subPath,
75 ::std::unique_ptr<::PackAccessStrategy> zipSubPack
76 );
77 // NOLINTEND
78
79public:
80 // static functions
81 // NOLINTBEGIN
82 MCNAPI static bool isValidZippedEncryptedPack(
83 ::IPackIOProvider const& io,
84 ::Core::Path const& pathToPack,
85 ::ContentIdentity& contentIdentity,
86 ::Core::Path const& subPath
87 );
88 // NOLINTEND
89
90public:
91 // constructor thunks
92 // NOLINTBEGIN
93 MCNAPI void* $ctor(
94 ::ResourceLocation const& archiveLocation,
95 ::ContentIdentity const& contentIdentity,
96 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
97 ::IPackIOProvider const& io,
98 ::Core::Path const& subPath,
99 ::std::unique_ptr<::PackAccessStrategy> zipSubPack
100 );
101 // NOLINTEND
102
103public:
104 // virtual function thunks
105 // NOLINTBEGIN
106 MCNAPI ::ResourceLocation const& $getPackLocation() const;
107
108 MCNAPI bool $hasFolder(::Core::Path const& packRelativePath) const;
109
110 MCNAPI void $forEachIn(
111 ::Core::Path const& packRelativePath,
112 ::std::function<void(::Core::Path const&)> callback,
113 bool recurseAnyways
114 ) const;
115
116 MCNAPI ::PackAccessStrategyType $getStrategyType() const;
117
118 MCNAPI ::Core::PathBuffer<::std::string> const& $getSubPath() const;
119
121
122 MCNAPI ::std::unique_ptr<::PackAccessStrategy> $createSubPack(::Core::Path const& subPath) const;
123
124 MCNAPI ::std::string $_getContentsFile();
125
126 MCNAPI ::std::string $_getEncryptedAssetStream(::Core::Path const& packRelativePath) const;
127
128 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
129 $_preloadSubFolders(::Core::Path const& packRelativePath) const;
130
131
132 // NOLINTEND
133
134public:
135 // vftables
136 // NOLINTBEGIN
137 MCNAPI static void** $vftable();
138 // NOLINTEND
139};
Definition PreloadedPathHandle.h:16
Definition ContentIdentity.h:8
Definition Path.h:12
Definition IContentKeyProvider.h:13
Definition IPackIOProvider.h:15
Definition PackAccessStrategy.h:26
Definition ResourceLocation.h:15
MCAPI::ResourceLocation const & $getPackLocation() const
MCAPI void * $ctor(::ResourceLocation const &archiveLocation, ::ContentIdentity const &contentIdentity, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, ::IPackIOProvider const &io, ::Core::Path const &subPath, ::std::unique_ptr<::PackAccessStrategy > zipSubPack)
MCAPI void $forEachIn(::Core::Path const &packRelativePath, ::std::function< void(::Core::Path const &)> callback, bool recurseAnyways) const
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI ZippedEncryptedFilesAccessStrategy(::ResourceLocation const &archiveLocation, ::ContentIdentity const &contentIdentity, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, ::IPackIOProvider const &io, ::Core::Path const &subPath, ::std::unique_ptr<::PackAccessStrategy > zipSubPack)
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) const
static MCAPI void ** $vftable()
MCAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle > $_preloadSubFolders(::Core::Path const &packRelativePath) const
MCAPI bool $supportsSignatureVerification() const
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
static MCAPI bool isValidZippedEncryptedPack(::IPackIOProvider const &io, ::Core::Path const &pathToPack, ::ContentIdentity &contentIdentity, ::Core::Path const &subPath)
MCAPI::std::string $_getEncryptedAssetStream(::Core::Path const &packRelativePath) const
MCAPI::std::string $_getContentsFile()
MCAPI ::Core::PathBuffer<::std::string > const & $getSubPath() const
Definition Alias.h:14