44 virtual ::Core::Result openFile(
48 ::Core::FileBufferingMode bufferingMode
58 virtual ::Core::Result getFileSize(
::Core::PathView filePath, uint64* pFileSize) ;
70 virtual ::Core::Result
74 virtual ::Core::Result readFileData(
::Core::PathView filePath, ::std::vector<uchar>& data) ;
80 virtual ::Core::Result createOneDirectoryIfNotExisting(
::Core::PathView dirName) ;
83 virtual ::Core::Result createDirectoryRecursively(
::Core::PathView dirName) ;
92 virtual ::Core::Result deleteDirectoryAndContentsRecursively(
::Core::PathView dirName) ;
95 virtual ::Core::Result deleteDirectoryContentsRecursively(
::Core::PathView directoryName) ;
98 virtual ::Core::Result
102 virtual ::Core::Result iterateOverDirectory(
104 ::Core::DirectoryIterationFlags flags,
109 virtual ::Core::Result
113 virtual ::Core::Result getDirectoryFilesAndSizes(
114 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut,
119 virtual ::Core::Result getDirectoryFilesRecursively(
125 virtual ::Core::Result
126 getDirectoryFilesSizeRecursively(uint64& totalSize,
::Core::PathView directoryPath) ;
129 virtual ::Core::Result getDirectoryFilesAllocatedSizeRecursively(
131 uint64& totalAllocatedSize,
139 virtual ::Core::Result
149 virtual ::Core::Result getFileOrDirectorySize(
::Core::PathView path, uint64* pFileSizeOut) ;
161 virtual ::Core::Result
162 getLastModificationTime(
::Core::PathView filePath, int64* pLastModificationTime) ;
165 virtual ::Core::Result
169 virtual ::Core::Result
176 virtual ::Core::Result copyFlatFile(
179 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
180 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
187 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>> getUniqueFilePathForFile(
::Core::PathView filePath
191 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
195 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
196 createUniquePathFromSeed(
::Core::PathView basePath, ::std::function<::std::string(
int)> seedGenerator) ;
199 virtual ::std::vector<::Core::PathBuffer<::std::string>> splitPathIntoFullPathSegments(
::Core::PathView path
203 virtual ::Core::Result readFileDataExt(
207 ::std::vector<uchar>&
buffer,
212 virtual ::Core::Result cleanPath_deprecated(
218 virtual ::Core::Result cleanPathSeparators_deprecated(
227 virtual ::std::unique_ptr<::Core::FileSizePresetToken>
231 virtual ::Core::Result _getDirectoriesAndFileSizesRecursively(
234 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut
238 virtual ::Core::Result _copyDirectoryStructure(
246 virtual ::Core::Result _copyFilesWithLimit(
249 ::std::vector<::Core::FileSystem::BasicFileData>& files,
250 uint64& currentFileBytesWritten,
251 uint64
const transactionLimit,
258 virtual ::Core::Result _copyFlatFile(
261 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
262 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
266 virtual ::std::optional<uint64> _checkFileInitialSize(
::Core::PathView path) ;
281 MCAPI ::Core::Result $openFile(
285 ::Core::FileBufferingMode bufferingMode
292 MCAPI ::Core::Result $getFileSize(
::Core::PathView filePath, uint64* pFileSize);
302 MCAPI ::Core::Result $readFileData(
::Core::PathView filePath, ::std::vector<uchar>& data);
306 MCAPI ::Core::Result $createOneDirectoryIfNotExisting(
::Core::PathView dirName);
314 MCAPI ::Core::Result $deleteDirectoryAndContentsRecursively(
::Core::PathView dirName);
316 MCAPI ::Core::Result $deleteDirectoryContentsRecursively(
::Core::PathView directoryName);
320 MCAPI ::Core::Result $iterateOverDirectory(
322 ::Core::DirectoryIterationFlags flags,
329 MCAPI ::Core::Result $getDirectoryFilesAndSizes(
330 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut,
334 MCAPI ::Core::Result $getDirectoryFilesRecursively(
339 MCAPI ::Core::Result $getDirectoryFilesSizeRecursively(uint64& totalSize,
::Core::PathView directoryPath);
341 MCAPI ::Core::Result $getDirectoryFilesAllocatedSizeRecursively(
343 uint64& totalAllocatedSize,
355 MCAPI ::Core::Result $getFileOrDirectorySize(
::Core::PathView path, uint64* pFileSizeOut);
363 MCAPI ::Core::Result $getLastModificationTime(
::Core::PathView filePath, int64* pLastModificationTime);
371 MCAPI ::Core::Result $copyFlatFile(
374 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
375 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
380 MCAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>> $getUniqueFilePathForFile(
::Core::PathView filePath);
382 MCAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
385 MCAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
386 $createUniquePathFromSeed(
::Core::PathView basePath, ::std::function<::std::string(
int)> seedGenerator);
388 MCAPI ::std::vector<::Core::PathBuffer<::std::string>> $splitPathIntoFullPathSegments(
::Core::PathView path);
390 MCAPI ::Core::Result $readFileDataExt(
394 ::std::vector<uchar>&
buffer,
398 MCAPI ::Core::Result $cleanPath_deprecated(
403 MCAPI ::Core::Result $cleanPathSeparators_deprecated(
410 MCAPI ::std::unique_ptr<::Core::FileSizePresetToken>
413 MCAPI ::Core::Result $_getDirectoriesAndFileSizesRecursively(
416 ::std::vector<::Core::FileSystem::BasicFileData>& filesOut
419 MCAPI ::Core::Result $_copyDirectoryStructure(
426 MCAPI ::Core::Result $_copyFilesWithLimit(
429 ::std::vector<::Core::FileSystem::BasicFileData>& files,
430 uint64& currentFileBytesWritten,
431 uint64
const transactionLimit,
437 MCAPI ::Core::Result $_copyFlatFile(
440 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
441 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
444 MCAPI ::std::optional<uint64> $_checkFileInitialSize(
::Core::PathView path);
450 MCAPI
static void** $vftable();