17 enum class CreateDirectoryResultCode :
int {
22 enum class LoadResultCode :
int {
29 enum class SaveResultCode :
int {
33 IncorrectBytesWrittenCount = 3,
36 struct CreateDirectoryResult {
45 CreateDirectoryResult& operator=(CreateDirectoryResult
const&);
46 CreateDirectoryResult(CreateDirectoryResult
const&);
47 CreateDirectoryResult();
60 LoadResult& operator=(LoadResult
const&);
61 LoadResult(LoadResult
const&);
75 SaveResult& operator=(SaveResult
const&);
76 SaveResult(SaveResult
const&);
85 virtual void initialize() = 0;
87 virtual ::std::string_view getAssetRoot() = 0;
89 virtual ::std::string_view getSaveDataRoot() = 0;
91 virtual ::Bedrock::PlatformBootstrap::LoadResult
92 rawLoadAssetFile(
char*
buffer, uint64 bufferSize,
char const* path,
char* errorBuffer, uint64 errorBufferSize) = 0;
94 virtual ::Bedrock::PlatformBootstrap::LoadResult
95 rawLoadDataFile(
char*
buffer, uint64 bufferSize,
char const* path,
char* errorBuffer, uint64 errorBufferSize) = 0;
97 virtual ::Bedrock::PlatformBootstrap::SaveResult
98 rawSaveDataFile(
char const*, uint64,
char const*,
bool,
char*, uint64) = 0;
100 virtual ::Bedrock::PlatformBootstrap::LoadResult rawLoadFromCustomRoot(
103 char const* fullPath,
105 uint64 errorBufferSize
108 virtual ::Bedrock::PlatformBootstrap::CreateDirectoryResult
109 rawCreateDirectory(
char const* path,
char* errorBuffer, uint64 errorBufferSize) = 0;
115 MCNAPI ::Bedrock::PlatformBootstrap::CreateDirectoryResult
121 ::std::string_view root,
124 uint64 errorBufferSize
130 ::std::string_view root,
133 uint64 errorBufferSize
140 MCNAPI static ::Bedrock::PlatformBootstrap::CreateDirectoryResult
143 MCNAPI static ::Bedrock::PlatformBootstrap::LoadResult
144 _makeLoadError(::Bedrock::PlatformBootstrap::LoadResultCode,
char*, uint64,
char const*, ...);
146 MCNAPI static ::Bedrock::PlatformBootstrap::SaveResult
147 _makeSaveError(::Bedrock::PlatformBootstrap::SaveResultCode,
char*, uint64,
char const*, ...);
150 MCNAPI static ::Bedrock::PlatformBootstrap& getSharedInstance();