Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
IPackIOProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/resource/ResourceFileSystem.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/platform/Result.h"
9
10// auto generated forward declare list
11// clang-format off
12class I18n;
13class IFileAccess;
14namespace Core { class FileHandlePool; }
15namespace Core { class Path; }
16namespace Core { class PathView; }
17// clang-format on
18
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 virtual ~IPackIOProvider() = default;
24
25 virtual ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> getFileAccess(::ResourceFileSystem system) const = 0;
26
27 virtual ::std::function<::Bedrock::Result<::std::string>(::Core::PathView const&, ::std::string&&)>
28 getAssetReader() const = 0;
29
30 virtual ::Core::Path getOnDiskScratchPath() const = 0;
31
32 virtual ::std::unique_ptr<::IPackIOProvider> clone() const = 0;
33
34 virtual ::std::shared_ptr<::Core::FileHandlePool> getArchiveHandlePool() const = 0;
35
36 virtual ::I18n& getLoc() const = 0;
37 // NOLINTEND
38};
Definition FileHandlePool.h:14
Definition PathView.h:19
Definition Path.h:10
Definition I18n.h:19
Definition IFileAccess.h:15
Definition IPackIOProvider.h:19