3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/resources/PackAccessStrategy.h"
7#include "mc/resources/PackAccessStrategyType.h"
14namespace Bedrock::Resources::Archive {
class Reader; }
15namespace Core {
class Path; }
18class DirectoryPackAccessStrategy :
public ::PackAccessStrategy {
31 DirectoryPackAccessStrategy& operator=(DirectoryPackAccessStrategy
const&);
32 DirectoryPackAccessStrategy(DirectoryPackAccessStrategy
const&);
33 DirectoryPackAccessStrategy();
38 virtual ~DirectoryPackAccessStrategy() ;
40 virtual uint64 getPackSize()
const ;
42 virtual ::ResourceLocation
const& getPackLocation()
const ;
44 virtual ::std::string
const& getPackName()
const ;
46 virtual bool isWritable()
const ;
48 virtual bool isTrusted()
const ;
50 virtual bool hasAsset(
::Core::Path const& packRelativePath,
bool trustedContentOnly,
bool caseSensative)
const
53 virtual bool hasFolder(
::Core::Path const& packRelativePath)
const ;
55 virtual bool getAsset(
::Core::Path const& packRelativePath, ::std::string& result,
bool trustedContentOnly)
const
58 virtual void forEachIn(
68 virtual ::PackAccessStrategyType getStrategyType()
const ;
70 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(
::Core::Path const& subPath)
const ;
72 virtual bool canRecurse()
const ;
74 virtual void unload() ;
76 virtual ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
77 _loadArchive(
::Core::Path const& packRelativePath)
const ;
79 virtual ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
80 _preloadSubFolders(
::Core::Path const& packRelativePath)
const ;
89 ::std::function<::std::string(
::Core::Path const&)> reader
93 ::std::unique_ptr<::PackAssetSet>&& assetSet,
96 ::std::function<::std::string(
::Core::Path const&)> reader
106 ::std::function<::std::string(
::Core::Path const&)> reader
110 ::std::unique_ptr<::PackAssetSet>&& assetSet,
113 ::std::function<::std::string(
::Core::Path const&)> reader
159 MCNAPI ::std::unique_ptr<::Bedrock::Resources::Archive::Reader>
162 MCNAPI ::std::vector<::Bedrock::Resources::PreloadedPathHandle>
Definition PreloadedPathHandle.h:15
MCAPI bool $hasFolder(::Core::Path const &packRelativePath) 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