37 StandardFileSystem& operator=(StandardFileSystem
const&);
38 StandardFileSystem(StandardFileSystem
const&);
44 virtual ::Core::Result openFile(
48 ::Core::FileBufferingMode bufferingMode
57 virtual ::Core::Result getFileSize(
::Core::PathView filePath, uint64* pFileSize) ;
65 virtual ::Core::Result
68 virtual ::Core::Result readFileData(
::Core::PathView filePath, ::std::vector<uchar>& data) ;
70 virtual ::Bedrock::Result<::std::string> readFile(
::Core::PathView filePath) ;
72 virtual ::Bedrock::Result<void> writeFile(
::Core::PathView filePath, ::std::string_view data) ;
76 virtual ::Core::Result createOneDirectoryIfNotExisting(
::Core::PathView dirName) ;
78 virtual ::Core::Result createDirectoryRecursively(
::Core::PathView dirName) ;
84 virtual ::Core::Result deleteDirectoryAndContentsRecursively(
::Core::PathView dirName) ;
86 virtual ::Core::Result deleteDirectoryContentsRecursively(
::Core::PathView directoryName) ;
88 virtual ::Core::Result
91 virtual ::Core::Result iterateOverDirectory(
93 ::Core::DirectoryIterationFlags flags,
97 virtual ::Core::Result
100 virtual ::Core::Result getDirectoryFilesAndSizes(
101 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut,
105 virtual ::Core::Result getDirectoryFilesRecursively(
110 virtual ::Core::Result
111 getDirectoryFilesSizeRecursively(uint64& totalSize,
::Core::PathView directoryPath) ;
113 virtual ::Core::Result getDirectoryFilesAllocatedSizeRecursively(
115 uint64& totalAllocatedSize,
121 virtual ::Core::Result
128 virtual ::Core::Result getFileOrDirectorySize(
::Core::PathView path, uint64* pFileSizeOut) ;
136 virtual ::Core::Result
137 getLastModificationTime(
::Core::PathView filePath, int64* pLastModificationTime) ;
139 virtual ::Core::Result
142 virtual ::Core::Result
147 virtual ::Core::Result copyFlatFile(
150 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
151 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
156 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
159 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
162 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
163 createUniquePathFromSeed(
::Core::PathView basePath, ::std::function<::std::string(
int)> seedGenerator) ;
165 virtual ::std::vector<::Core::PathBuffer<::std::string>>
168 virtual ::Core::Result readFileDataExt(
172 ::std::vector<uchar>&
buffer,
176 virtual ::Core::Result cleanPath_deprecated(
181 virtual ::Core::Result cleanPathSeparators_deprecated(
188 virtual ::std::unique_ptr<::Core::FileSizePresetToken>
191 virtual ::Core::Result _getDirectoriesAndFileSizesRecursively(
194 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut
197 virtual ::Core::Result _copyDirectoryStructure(
204 virtual ::Core::Result _copyFilesWithLimit(
207 ::std::vector<::Core::FileSystem::BasicFileData>& files,
208 uint64& currentFileBytesWritten,
209 uint64
const transactionLimit,
215 virtual ::Core::Result _copyFlatFile(
218 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
219 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
222 virtual ::std::optional<uint64> _checkFileInitialSize(
::Core::PathView path) ;
224 virtual ~StandardFileSystem() =
default;
234 ::Core::FileBufferingMode bufferingMode
277 ::Core::DirectoryIterationFlags flags,
281 MCNAPI ::Core::Result
285 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut,
298 uint64& totalAllocatedSize,
329 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
330 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
335 MCNAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
338 MCNAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
341 MCNAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
350 ::std::vector<uchar>&
buffer,
366 MCNAPI ::std::unique_ptr<::Core::FileSizePresetToken>
372 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut
385 ::std::vector<::Core::FileSystem::BasicFileData>& files,
386 uint64& currentFileBytesWritten,
387 uint64
const transactionLimit,
396 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
397 ::std::vector<::Core::ExcludedPath>
const& excludedFiles