LeviLamina
Loading...
Searching...
No Matches
WriteBufferedTransaction.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/DirectoryIterationFlags.h"
7#include "mc/deps/core/file/FileBufferingMode.h"
8#include "mc/deps/core/file/FileType.h"
9#include "mc/deps/core/file/file_system/CrossStorageCopyMode.h"
10#include "mc/deps/core/file/file_system/FileSystemImpl.h"
11#include "mc/platform/brstd/function_ref.h"
12
13// auto generated forward declare list
14// clang-format off
15namespace Core { class FileImpl; }
16namespace Core { class FileOpenMode; }
17namespace Core { class PathView; }
18namespace Core { class Result; }
19namespace Core { struct DirectoryIterationItem; }
20// clang-format on
21
22namespace Core {
23
24class WriteBufferedTransaction : public ::Core::FileSystemImpl {
25public:
26 // WriteBufferedTransaction inner types declare
27 // clang-format off
28 struct DirectoryItem;
29 // clang-format on
30
31 // WriteBufferedTransaction inner types define
32 struct DirectoryItem {
33 public:
34 // member variables
35 // NOLINTBEGIN
40 // NOLINTEND
41
42 public:
43 // prevent constructor by default
44 DirectoryItem& operator=(DirectoryItem const&);
45 DirectoryItem(DirectoryItem const&);
46 DirectoryItem();
47 };
48
49public:
50 // member variables
51 // NOLINTBEGIN
56 // NOLINTEND
57
58public:
59 // prevent constructor by default
60 WriteBufferedTransaction& operator=(WriteBufferedTransaction const&);
61 WriteBufferedTransaction(WriteBufferedTransaction const&);
62 WriteBufferedTransaction();
63
64public:
65 // virtual functions
66 // NOLINTBEGIN
67 virtual ::Core::CrossStorageCopyMode getCrossStorageCopyMode() /*override*/;
68
69 virtual ::Core::Result _openFile(
70 ::std::unique_ptr<::Core::FileImpl>&,
73 ::Core::FileBufferingMode
74 ) /*override*/;
75
76 virtual bool _fileExists(::Core::PathView) /*override*/;
77
78 virtual ::Core::Result _deleteFile(::Core::PathView) /*override*/;
79
80 virtual ::Core::Result _getFileSize(::Core::PathView, uint64*) /*override*/;
81
82 virtual ::Core::Result _renameFile(::Core::PathView, ::Core::PathView) /*override*/;
83
84 virtual ::Core::Result _createOneDirectory(::Core::PathView) /*override*/;
85
86 virtual bool _directoryExists(::Core::PathView) /*override*/;
87
88 virtual ::Core::Result _deleteEmptyDirectory(::Core::PathView) /*override*/;
89
90 virtual ::Core::Result _deleteDirectoryAndContentsRecursively(::Core::PathView directoryPath) /*override*/;
91
92 virtual ::Core::Result _getFileOrDirectorySize(::Core::PathView entryName, uint64* pFileSizeOut) /*override*/;
93
94 virtual ::Core::Result _renameDirectory(::Core::PathView, ::Core::PathView) /*override*/;
95
96 virtual ::Core::Result _iterateOverDirectory(
98 ::Core::DirectoryIterationFlags,
100 ) /*override*/;
101
102 virtual bool _fileOrDirectoryExists(::Core::PathView) /*override*/;
103
104 virtual ::Core::Result _getEntryType(::Core::PathView, ::Core::FileType&) /*override*/;
105
106 virtual ::Core::Result _getLastModificationTime(::Core::PathView, int64*) /*override*/;
107
108 virtual ::Core::Result _copyTimeAndAccessRights(::Core::PathView, ::Core::PathView) /*override*/;
109
110 virtual ::Core::Result _endTransaction() /*override*/;
111
112 virtual ~WriteBufferedTransaction() /*override*/ = default;
113 // NOLINTEND
114
115public:
116 // virtual function thunks
117 // NOLINTBEGIN
118
119 // NOLINTEND
120};
121
122} // namespace Core
Definition FileImpl.h:19
Definition FileOpenMode.h:7
Definition FileSystemImpl.h:30
Definition PathView.h:17
Definition Result.h:11
Definition function_ref.h:60
Definition DirectoryIterationItem.h:12
Definition WriteBufferedTransaction.h:32
Definition Alias.h:14