3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/resources/DirectoryPackAccessStrategy.h"
8#include "mc/resources/PackAccessAssetGenerationResult.h"
9#include "mc/resources/PackAccessStrategyType.h"
17namespace Core {
class Path; }
38 virtual ::PackAccessAssetGenerationResult generateAssetSet() ;
41 virtual bool isTrusted()
const ;
44 virtual bool isWritable()
const ;
47 virtual bool hasAsset(
::Core::Path const& packRelativePath,
bool trustedContentOnly,
bool caseSensative)
const
51 virtual bool getAsset(
::Core::Path const& packRelativePath, ::std::string& result,
bool trustedContentOnly)
const
55 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(
::Core::Path const& subPath)
const ;
58 virtual bool isAssetExtractionViable()
const ;
61 virtual ::PackAccessStrategyType getStrategyType()
const ;
64 virtual ::ContentIdentity readContentIdentity()
const ;
67 virtual ::std::string _getContentsFile();
70 virtual ::std::string _getEncryptedAssetStream(
::Core::Path const& packRelativePath)
const;
82 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const>
const& keyProvider,
84 ::std::optional<::std::unordered_map<::Core::Path, ::std::string>> assetSet
94 MCNAPI
static void _transformStream(::std::string& stream, ::std::string
const& key, uint64 offset);
105 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const>
const& keyProvider,
107 ::std::optional<::std::unordered_map<::Core::Path, ::std::string>> assetSet
Definition ContentIdentity.h:8
Definition DirectoryPackAccessStrategy.h:17
Definition EncryptedFileAccessStrategy.h:20
MCAPI bool $isWritable() const
static MCAPI void _transformStream(::std::string &stream, ::std::string const &key, uint64 offset)
MCAPI bool $isAssetExtractionViable() const
MCAPI::std::string $_getContentsFile()
MCAPI bool $isTrusted() const
MCAPI::ContentIdentity $readContentIdentity() const
static MCAPI bool isValidEncryptedPack(::Core::Path const &pathToPack, ::ContentIdentity &contentIdentity)
MCAPI bool $hasAsset(::Core::Path const &packRelativePath, bool trustedContentOnly, bool caseSensative) const
static MCAPI bool _getContentIdentityFromEncryptedStream(::std::string &stream, ::ContentIdentity &contentIdentity)
MCAPI EncryptedFileAccessStrategy(::ResourceLocation const &resourceLocation, ::ContentIdentity const &contentIdentity, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, bool canRecurse, ::std::optional<::std::unordered_map<::Core::Path, ::std::string > > assetSet)
MCAPI::std::string $_getEncryptedAssetStream(::Core::Path const &packRelativePath) const
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
static MCAPI void ** $vftable()
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI void * $ctor(::ResourceLocation const &resourceLocation, ::ContentIdentity const &contentIdentity, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const > const &keyProvider, bool canRecurse, ::std::optional<::std::unordered_map<::Core::Path, ::std::string > > assetSet)
MCAPI::PackAccessAssetGenerationResult $generateAssetSet()
MCAPI bool $getAsset(::Core::Path const &packRelativePath, ::std::string &result, bool trustedContentOnly) const
Definition IContentKeyProvider.h:13
Definition PackAccessStrategy.h:20
Definition ResourceLocation.h:14