3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/file/DirectoryIterationFlags.h"
7#include "mc/deps/core/file/FileAccessType.h"
8#include "mc/deps/core/file/FileBufferingMode.h"
9#include "mc/deps/core/file/FileType.h"
10#include "mc/deps/core/file/file_system/FileSystemImpl.h"
11#include "mc/platform/brstd/function_ref.h"
20namespace Core {
class Result; }
34 virtual ::Core::Result _openFile(
35 ::std::unique_ptr<::Core::FileImpl>& uptFileOut,
38 ::Core::FileBufferingMode bufferingMode
45 virtual ::Core::Result _getFileSize(
::Core::PathView filePath, uint64* pFileSizeOut) ;
51 virtual ::Core::Result _deleteEmptyDirectory(
::Core::PathView directoryPath) ;
55 virtual ::Core::Result
58 virtual ::Core::Result _iterateOverDirectory(
60 ::Core::DirectoryIterationFlags flags,
66 virtual ::Core::Result _getLastModificationTime(
::Core::PathView filePath, int64* pModificationTime) ;
68 virtual ::Core::Result _getEntryType(
::Core::PathView entryPath, ::Core::FileType& fileTypeOut) ;
70 virtual ::Core::Result
73 virtual ~FileSystem_windows() =
default;
80 ::Core::FileAccessType accessType,
81 ::std::shared_ptr<::Core::FileStorageArea> storageArea,
82 ::std::shared_ptr<::Core::FlatFileManifestTracker> manifestTracker
93 ::Core::FileAccessType accessType,
94 ::std::shared_ptr<::Core::FileStorageArea> storageArea,
95 ::std::shared_ptr<::Core::FlatFileManifestTracker> manifestTracker
103 ::std::unique_ptr<::Core::FileImpl>& uptFileOut,
106 ::Core::FileBufferingMode bufferingMode
127 ::Core::DirectoryIterationFlags flags,
Definition FileOpenMode.h:7
Definition FileStorageArea.h:26
Definition FileSystemImpl.h:30
MCAPI::Core::Result $_deleteFile(::Core::PathView path)
MCAPI::Core::Result _makeFailureFromFileSystemResult(::std::error_code const &errorCode, char const *function, char const *fileContext)
MCAPI void * $ctor(::Core::FileAccessType accessType, ::std::shared_ptr<::Core::FileStorageArea > storageArea, ::std::shared_ptr<::Core::FlatFileManifestTracker > manifestTracker)
MCAPI bool $_directoryExists(::Core::PathView directoryPath)
MCAPI::Core::Result $_openFile(::std::unique_ptr<::Core::FileImpl > &uptFileOut, ::Core::PathView filename, ::Core::FileOpenMode fileOpenMode, ::Core::FileBufferingMode bufferingMode)
MCAPI::Core::Result $_getLastModificationTime(::Core::PathView filePath, int64 *pModificationTime)
MCAPI::Core::Result $_deleteEmptyDirectory(::Core::PathView directoryPath)
MCAPI::Core::Result $_renameDirectory(::Core::PathView sourceDirectoryPath, ::Core::PathView targetDirectoryPath)
MCAPI::Core::Result $_getEntryType(::Core::PathView entryPath, ::Core::FileType &fileTypeOut)
MCAPI bool $_fileOrDirectoryExists(::Core::PathView entryPath)
MCAPI::Core::Result $_getFileSize(::Core::PathView filePath, uint64 *pFileSizeOut)
MCAPI bool $_fileExists(::Core::PathView filePath)
static MCAPI void ** $vftable()
MCAPI::Core::Result $_createOneDirectory(::Core::PathView directoryPath)
MCAPI FileSystem_windows(::Core::FileAccessType accessType, ::std::shared_ptr<::Core::FileStorageArea > storageArea, ::std::shared_ptr<::Core::FlatFileManifestTracker > manifestTracker)
MCAPI::Core::Result $_copyTimeAndAccessRights(::Core::PathView sourceEntryPath, ::Core::PathView targetEntryPath)
MCAPI::Core::Result $_iterateOverDirectory(::Core::PathView directoryPath, ::Core::DirectoryIterationFlags flags, ::brstd::function_ref<::Core::Result(::Core::DirectoryIterationItem const &)> fx)
MCAPI::Core::Result $_renameFile(::Core::PathView sourceFilePath, ::Core::PathView targetFilePath)
Definition FlatFileManifestTracker.h:13
Definition function_ref.h:60
Definition DirectoryIterationItem.h:12