3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/platform/Result.h"
7#include "mc/resources/PackAccessStrategy.h"
8#include "mc/resources/PackAccessStrategyType.h"
16namespace Bedrock::Resources::Archive {
class Reader; }
17namespace Core {
class Path; }
21class DirectoryPackAccessStrategy :
public ::PackAccessStrategy {
34 DirectoryPackAccessStrategy& operator=(DirectoryPackAccessStrategy
const&);
35 DirectoryPackAccessStrategy(DirectoryPackAccessStrategy
const&);
36 DirectoryPackAccessStrategy();
41 virtual ~DirectoryPackAccessStrategy() ;
43 virtual uint64 getPackSize()
const ;
45 virtual ::ResourceLocation
const& getPackLocation()
const ;
47 virtual ::std::string
const& getPackName()
const ;
49 virtual bool isWritable()
const ;
51 virtual bool isTrusted()
const ;
53 virtual bool hasAsset(
::Core::Path const& packRelativePath,
bool trustedContentOnly,
bool caseSensative)
const
56 virtual bool hasFolder(
::Core::Path const& packRelativePath)
const ;
58 virtual bool getAsset(
::Core::Path const& packRelativePath, ::std::string& result,
bool trustedContentOnly)
const
61 virtual void forEachIn(
71 virtual ::PackAccessStrategyType getStrategyType()
const ;
73 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(
::Core::Path const& subPath)
const ;
75 virtual bool canRecurse()
const ;
77 virtual void unload() ;
79 virtual ::Bedrock::Result<::StreamableAssetSource>
80 getStreamableSource(
::Core::Path const& packRelativePath, ::std::optional<::Core::PathView>)
const ;
82 virtual ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
83 _loadArchive(
::Core::Path const& packRelativePath)
const ;
85 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
86 _preloadSubFolders(
::Core::Path const& packRelativePath)
const ;
95 ::std::function<::std::string(
::Core::Path const&)> reader
99 ::std::unique_ptr<::PackAssetSet>&& assetSet,
102 ::std::function<::std::string(
::Core::Path const&)> reader
112 ::std::function<::std::string(
::Core::Path const&)> reader
116 ::std::unique_ptr<::PackAssetSet>&& assetSet,
119 ::std::function<::std::string(
::Core::Path const&)> reader
165 MCNAPI ::Bedrock::Result<::StreamableAssetSource>
168 MCNAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
171 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
Definition PreloadedPathHandle.h:16
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) const
MCAPI ::Bedrock::Result<::StreamableAssetSource > $getStreamableSource(::Core::Path const &packRelativePath, ::std::optional<::Core::PathView >) const
MCAPI DirectoryPackAccessStrategy(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI::ResourceLocation const & $getPackLocation() const
MCAPI::PackAccessStrategyType $getStrategyType() const
MCAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader > $_loadArchive(::Core::Path const &packRelativePath) const
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 void * $ctor(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
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(::std::unique_ptr<::PackAssetSet > &&assetSet, ::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI uint64 $getPackSize() const
MCAPI void $forEachInAssetSet(::Core::Path const &packRelativePath, ::std::function< void(::Core::Path const &)> callback) const
MCAPI void * $ctor(::ResourceLocation const &packLocation, bool recurse, ::std::function<::std::string(::Core::Path const &)> reader)
MCAPI bool $isWritable() const
MCAPI bool $isTrusted() const
MCAPI ::std::unique_ptr<::PackAccessStrategy > $createSubPack(::Core::Path const &subPath) const
static MCAPI void ** $vftable()
Definition PackAssetSet.h:13
Definition ResourceLocation.h:15
Definition StreamableAssetSource.h:5