LeviLamina
Loading...
Searching...
No Matches
File.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/FileBufferingMode.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace Core { class FileImpl; }
11namespace Core { class FileOpenMode; }
12namespace Core { class FileSystemImpl; }
13namespace Core { class PathView; }
14namespace Core { class Result; }
15// clang-format on
16
17namespace Core {
18
19class File {
20public:
21 // member variables
22 // NOLINTBEGIN
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 File& operator=(File const&);
30 File(File const&);
31 File();
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCAPI
37 File(::std::unique_ptr<::Core::FileImpl>&& uptFile, ::std::unique_ptr<::Core::FileSystemImpl>&& uptTransaction);
38
39 MCAPI ::Core::Result close();
40
41 MCAPI ::Core::Result getPosition(uint64* pPosition);
42
43 MCAPI ::Core::Result getSize(uint64* pSize);
44
45 MCAPI ::Core::Result
46 open(::Core::PathView fileName, ::Core::FileOpenMode openMode, ::Core::FileBufferingMode bufferingMode);
47
48 MCAPI ::Core::File& operator=(::Core::File&& rhs);
49
50 MCAPI ::Core::Result read(void* buf, uint64 numBytes, uint64* pNumBytesRead);
51
52 MCAPI ::Core::Result readExactly(void* buf, uint64 numBytes);
53
54 MCAPI ::Core::Result setPosition(uint64 position);
55
56 MCAPI ::Core::Result write(void const* pBuf, uint64 numBytes);
57
58 MCAPI ~File();
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static ::Core::Result
65 writeCreateOrAppendFileData(::Core::PathView path, uint64 offset, uint64 numBytesToWrite, uchar const* buffer);
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void*
72 $ctor(::std::unique_ptr<::Core::FileImpl>&& uptFile, ::std::unique_ptr<::Core::FileSystemImpl>&& uptTransaction);
73 // NOLINTEND
74
75public:
76 // destructor thunk
77 // NOLINTBEGIN
78 MCAPI void $dtor();
79 // NOLINTEND
80};
81
82} // namespace Core
Definition FileOpenMode.h:7
Definition File.h:19
Definition PathView.h:16
Definition Result.h:6
Definition buffer.h:5
Definition Alias.h:14