91 virtual ::Core::Result
119 virtual ::Core::Result readFileData(
::Core::PathView, ::std::vector<uchar>&) = 0;
125 virtual ::Core::Result createOneDirectoryIfNotExisting(
::Core::PathView) = 0;
137 virtual ::Core::Result deleteDirectoryAndContentsRecursively(
::Core::PathView) = 0;
140 virtual ::Core::Result deleteDirectoryContentsRecursively(
::Core::PathView) = 0;
146 virtual ::Core::Result iterateOverDirectory(
148 ::Core::DirectoryIterationFlags,
156 virtual ::Core::Result
157 getDirectoryFilesAndSizes(::std::vector<::Core::FileSystem::BasicFileData>&,
::Core::PathView) = 0;
160 virtual ::Core::Result
164 virtual ::Core::Result getDirectoryFilesSizeRecursively(uint64&,
::Core::PathView) = 0;
167 virtual ::Core::Result getDirectoryFilesAllocatedSizeRecursively(uint64&, uint64&,
::Core::PathView) = 0;
182 virtual ::Core::Result getFileOrDirectorySize(
::Core::PathView, uint64*) = 0;
194 virtual ::Core::Result getLastModificationTime(
::Core::PathView, int64*) = 0;
206 virtual ::Core::Result copyFlatFile(
209 ::std::vector<::Core::ExcludedPath>
const&,
210 ::std::vector<::Core::ExcludedPath>
const&
217 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>> getUniqueFilePathForFile(
::Core::PathView) = 0;
220 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
224 virtual ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
225 createUniquePathFromSeed(
::Core::PathView, ::std::function<::std::string(
int)>) = 0;
228 virtual ::std::vector<::Core::PathBuffer<::std::string>> splitPathIntoFullPathSegments(
::Core::PathView) = 0;
231 virtual ::Core::Result readFileDataExt(
::Core::PathView, uint64, uint64, ::std::vector<uchar>&, uint64&) = 0;
234 virtual ::Core::Result
238 virtual ::Core::Result
245 virtual ::std::unique_ptr<::Core::FileSizePresetToken> presetFileInitialSize(
::Core::PathView, uint64) = 0;
248 virtual ::Core::Result _getDirectoriesAndFileSizesRecursively(
251 ::std::vector<::Core::FileSystem::BasicFileData>&
255 virtual ::Core::Result _copyDirectoryStructure(
263 virtual ::Core::Result _copyFilesWithLimit(
266 ::std::vector<::Core::FileSystem::BasicFileData>&,
274 virtual ::Core::Result _copyFlatFile(
277 ::std::vector<::Core::ExcludedPath>
const&,
278 ::std::vector<::Core::ExcludedPath>
const&
282 virtual ::std::optional<uint64> _checkFileInitialSize(
::Core::PathView) = 0;
291 MCNAPI static ::Core::FileSystem&
get();