3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/file/DirectoryIterationFlags.h"
7#include "mc/deps/core/file/FileBufferingMode.h"
8#include "mc/deps/core/file/PathBuffer.h"
9#include "mc/platform/brstd/function_ref.h"
19namespace Core {
class Result; }
26class FlatFileSystemImpl {
36 FlatFileSystemImpl& operator=(FlatFileSystemImpl
const&);
37 FlatFileSystemImpl(FlatFileSystemImpl
const&);
45 ::std::shared_ptr<::Core::FlatFileManifestTracker> manifestTracker
48 MCNAPI ::Core::FlatFileSearchResult
54 uint64& seekPositionOut,
61 ::std::vector<::Core::ExcludedPath>
const& excludedDirectories,
62 ::std::vector<::Core::ExcludedPath>
const& excludedFiles
70 bool directoryDeleteEnabled,
71 bool deleteRecursively
87 ::Core::DirectoryIterationFlags flags,
92 ::std::unique_ptr<::Core::FileImpl>& fileOut,
96 ::Core::FileBufferingMode fileBufferingMode
102 bool shouldIncludeParentDir
111 ::std::shared_ptr<::Core::FlatFileManifestTracker> manifestTracker
Definition FileOpenMode.h:7
Definition FileSystemImpl.h:30
Definition FlatFileManifestTracker.h:13
Definition FlatFileSearchResult.h:7
MCAPI FlatFileSystemImpl(::Core::FileSystemImpl &fileSystemImplementation, ::std::shared_ptr<::Core::FlatFileManifestTracker > manifestTracker)
MCAPI bool isDirectoryPathAFlatFile(::Core::PathView directoryPath)
MCAPI::Core::Result _getSeekPositionAndSize(::Core::PathView filePath, ::Core::PathView manifestPath, uint64 &seekPositionOut, uint64 &fileSizeOut)
MCAPI::Core::Result deleteFileOrDirectory(::Core::PathView fileOrDirectoryPath, ::Core::PathView manifestPath, bool directoryDeleteEnabled, bool deleteRecursively)
MCAPI bool fileExists(::Core::PathView filePath, ::Core::PathView manifestPath)
MCAPI bool directoryExists(::Core::PathView directoryPath, ::Core::PathView manifestPath)
MCAPI::Core::Result createFlatFile(::Core::PathView sourceDirectoryPath, ::Core::PathView targetDirectoryPath)
MCAPI bool fileOrDirectoryExists(::Core::PathView path, ::Core::PathView manifestPath)
MCAPI::Core::Result iterateOverDirectory(::Core::PathView directoryPath, ::Core::PathView manifestPath, ::Core::DirectoryIterationFlags flags, ::brstd::function_ref<::Core::Result(::Core::DirectoryIterationItem const &)> callbackFunction)
MCAPI void * $ctor(::Core::FileSystemImpl &fileSystemImplementation, ::std::shared_ptr<::Core::FlatFileManifestTracker > manifestTracker)
MCAPI::Core::FlatFileSearchResult _findFileOrDirectoryEntry(::Core::PathView filePath, ::Core::PathView manifestPath, bool skipDeleted)
MCAPI::Core::Result openFlatFile(::std::unique_ptr<::Core::FileImpl > &fileOut, ::Core::PathView filePath, ::Core::PathView manifestPath, ::Core::FileOpenMode openMode, ::Core::FileBufferingMode fileBufferingMode)
MCAPI::Core::Result getFileSize(::Core::PathView filePath, ::Core::PathView manifestPath, uint64 *pFileSize)
MCAPI::Core::Result copyFlatFile(::Core::PathView sourceDirectoryPath, ::Core::PathView targetDirectoryPath, ::std::vector<::Core::ExcludedPath > const &excludedDirectories, ::std::vector<::Core::ExcludedPath > const &excludedFiles)
MCAPI bool shouldAccessFlatFile(::Core::PathView path, ::Core::PathBuffer<::std::string > &manifestFilePath, bool shouldIncludeParentDir)
Definition PathBuffer.h:8
Definition function_ref.h:60
Definition DirectoryIterationItem.h:18
Definition ExcludedPath.h:10