LeviLamina
Loading...
Searching...
No Matches
MemoryMappedFileAccess.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/file_system/IFileAccess.h"
7#include "mc/deps/core/file/file_system/IFileReadAccess.h"
8#include "mc/deps/core/file/file_system/IFileWriteAccess.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10
11// auto generated forward declare list
12// clang-format off
14namespace Core { class PathView; }
15// clang-format on
16
17class MemoryMappedFileAccess : public ::IFileAccess {
18public:
19 // MemoryMappedFileAccess inner types declare
20 // clang-format off
23 struct StreamDetails;
24 struct StreamHandle;
25 // clang-format on
26
27 // MemoryMappedFileAccess inner types define
29 public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual uint64 fread(void* buffer, uint64, uint64 count, void* file) const /*override*/;
33 // NOLINTEND
34
35 public:
36 // virtual function thunks
37 // NOLINTBEGIN
38 MCNAPI uint64 $fread(void* buffer, uint64, uint64 count, void* file) const;
39
40
41 // NOLINTEND
42
43 public:
44 // vftables
45 // NOLINTBEGIN
46 MCNAPI static void** $vftable();
47 // NOLINTEND
48 };
49
51 public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual uint64 fwrite(void const* buffer, uint64, uint64 count, void* file) /*override*/;
55 // NOLINTEND
56
57 public:
58 // virtual function thunks
59 // NOLINTBEGIN
60 MCNAPI uint64 $fwrite(void const* buffer, uint64, uint64 count, void* file);
61
62
63 // NOLINTEND
64
65 public:
66 // vftables
67 // NOLINTBEGIN
68 MCNAPI static void** $vftable();
69 // NOLINTEND
70 };
71
72 struct StreamDetails {
73 public:
74 // member variables
75 // NOLINTBEGIN
81 // NOLINTEND
82
83 public:
84 // prevent constructor by default
85 StreamDetails& operator=(StreamDetails const&);
86 StreamDetails(StreamDetails const&);
87 StreamDetails();
88 };
89
90 struct StreamHandle {
91 public:
92 // member variables
93 // NOLINTBEGIN
96 // NOLINTEND
97
98 public:
99 // prevent constructor by default
100 StreamHandle& operator=(StreamHandle const&);
101 StreamHandle(StreamHandle const&);
102 StreamHandle();
103 };
104
105public:
106 // member variables
107 // NOLINTBEGIN
116 // NOLINTEND
117
118public:
119 // prevent constructor by default
120 MemoryMappedFileAccess& operator=(MemoryMappedFileAccess const&);
121 MemoryMappedFileAccess(MemoryMappedFileAccess const&);
122 MemoryMappedFileAccess();
123
124public:
125 // virtual functions
126 // NOLINTBEGIN
127 virtual ~MemoryMappedFileAccess() /*override*/ = default;
128
129 virtual void* fopen(::Core::PathView filePath, ::std::string const& mode) /*override*/;
130
131 virtual int fclose(void* file) /*override*/;
132
133 virtual int fseek(void* file, int64 offset, int origin) /*override*/;
134
135 virtual int64 ftell(void* file) /*override*/;
136
137 virtual ::IFileReadAccess const* getReadInterface() const /*override*/;
138
139 virtual ::IFileWriteAccess* getWriteInterface() /*override*/;
140
141 virtual void unload() /*override*/;
142 // NOLINTEND
143
144public:
145 // member functions
146 // NOLINTBEGIN
147 MCNAPI MemoryMappedFileAccess(
148 ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> const& inner,
149 ::std::unique_ptr<::FileAccessTransforms> transforms
150 );
151 // NOLINTEND
152
153public:
154 // static variables
155 // NOLINTBEGIN
156 MCNAPI static ::FileAccessTransforms const& EMPTY_TRANSFORMS();
157 // NOLINTEND
158
159public:
160 // constructor thunks
161 // NOLINTBEGIN
162 MCNAPI void* $ctor(
163 ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> const& inner,
164 ::std::unique_ptr<::FileAccessTransforms> transforms
165 );
166 // NOLINTEND
167
168public:
169 // virtual function thunks
170 // NOLINTBEGIN
171 MCNAPI void* $fopen(::Core::PathView filePath, ::std::string const& mode);
172
173 MCNAPI int $fclose(void* file);
174
175 MCNAPI int $fseek(void* file, int64 offset, int origin);
176
177 MCNAPI int64 $ftell(void* file);
178
179 MCNAPI ::IFileReadAccess const* $getReadInterface() const;
180
182
183 MCNAPI void $unload();
184
185
186 // NOLINTEND
187
188public:
189 // vftables
190 // NOLINTBEGIN
191 MCNAPI static void** $vftable();
192 // NOLINTEND
193};
Definition PathView.h:19
Definition FileAccessTransforms.h:5
Definition IFileAccess.h:15
Definition IFileReadAccess.h:5
Definition IFileWriteAccess.h:5
Definition MemoryMappedFileAccess.h:28
MCAPI uint64 $fread(void *buffer, uint64, uint64 count, void *file) const
Definition MemoryMappedFileAccess.h:50
MCAPI uint64 $fwrite(void const *buffer, uint64, uint64 count, void *file)
MCAPI::IFileReadAccess const * $getReadInterface() const
MCAPI void * $ctor(::Bedrock::NotNullNonOwnerPtr<::IFileAccess > const &inner, ::std::unique_ptr<::FileAccessTransforms > transforms)
static MCAPI void ** $vftable()
MCAPI int $fclose(void *file)
static MCAPI ::FileAccessTransforms const & EMPTY_TRANSFORMS()
MCAPI::IFileWriteAccess * $getWriteInterface()
MCAPI int64 $ftell(void *file)
MCAPI void * $fopen(::Core::PathView filePath, ::std::string const &mode)
MCAPI int $fseek(void *file, int64 offset, int origin)
STL namespace.
Definition MemoryMappedFileAccess.h:72
Definition MemoryMappedFileAccess.h:90
Definition buffer.h:5
Definition Alias.h:14