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#include "mc/deps/core/file/PathBuffer.h"
8#include "mc/deps/core/string/BasicStackString.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace Core { class FileImpl; }
13namespace Core { class FileOpenMode; }
14namespace Core { class FileSystemImpl; }
15namespace Core { class PathView; }
16namespace Core { class Result; }
17namespace brstd { struct source_location; }
18// clang-format on
19
20namespace Core {
21
22class File {
23public:
24 // member variables
25 // NOLINTBEGIN
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 File& operator=(File const&);
33 File(File const&);
34 File();
35
36public:
37 // member functions
38 // NOLINTBEGIN
39 MCNAPI
40 File(::std::unique_ptr<::Core::FileImpl>&& uptFile, ::std::unique_ptr<::Core::FileSystemImpl>&& uptTransaction);
41
42 MCNAPI ::Core::Result close();
43
44 MCNAPI_C ::Core::Result flush();
45
46 MCNAPI ::Core::Result getRemainingSize(uint64* pSize);
47
48 MCNAPI ::Core::Result getSize(uint64* pSize);
49
50 MCNAPI_C bool isNearTransactionLimit(uint64 windowSize) const;
51
52 MCNAPI ::Core::Result
53 open(::Core::PathView fileName, ::Core::FileOpenMode openMode, ::Core::FileBufferingMode bufferingMode);
54
55 MCNAPI ::Core::File& operator=(::Core::File&& rhs);
56
57 MCNAPI ::Core::Result read(void* buf, uint64 numBytes, uint64* pNumBytesRead);
58
59 MCNAPI ::Core::Result readExactly(void* buf, uint64 numBytes);
60
61 MCNAPI void setLoggingEnabled(bool loggingEnabled);
62
63 MCNAPI ::Core::Result setPosition(uint64 position);
64
65 MCNAPI ::Core::Result write(void const* pBuf, uint64 numBytes);
66
67 MCNAPI ~File();
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73 MCNAPI_C static ::Core::PathBuffer<::Core::BasicStackString<char, 1024>> cleanPath(::Core::PathView entryPath);
74
75 MCNAPI static ::Core::Result writeCreateOrAppendFileData(
77 uint64 offset,
78 uint64 numBytesToWrite,
79 uchar const* buffer,
80 ::brstd::source_location sourceLocation
81 );
82 // NOLINTEND
83
84public:
85 // constructor thunks
86 // NOLINTBEGIN
87 MCNAPI_C void* $ctor(::Core::File&& rhs);
88
89 MCNAPI void*
90 $ctor(::std::unique_ptr<::Core::FileImpl>&& uptFile, ::std::unique_ptr<::Core::FileSystemImpl>&& uptTransaction);
91 // NOLINTEND
92
93public:
94 // destructor thunk
95 // NOLINTBEGIN
96 MCNAPI void $dtor();
97 // NOLINTEND
98};
99
100} // namespace Core
Definition FileImpl.h:19
Definition FileOpenMode.h:7
Definition FileSystemImpl.h:30
Definition File.h:22
MCAPI::Core::File & operator=(::Core::File &&rhs)
MCAPI::Core::Result getSize(uint64 *pSize)
MCAPI::Core::Result close()
MCAPI void $dtor()
static MCAPI ::Core::Result writeCreateOrAppendFileData(::Core::PathView path, uint64 offset, uint64 numBytesToWrite, uchar const *buffer, ::brstd::source_location sourceLocation)
MCAPI::Core::Result write(void const *pBuf, uint64 numBytes)
MCAPI ~File()
MCAPI File(::std::unique_ptr<::Core::FileImpl > &&uptFile, ::std::unique_ptr<::Core::FileSystemImpl > &&uptTransaction)
MCAPI::Core::Result read(void *buf, uint64 numBytes, uint64 *pNumBytesRead)
MCAPI void * $ctor(::std::unique_ptr<::Core::FileImpl > &&uptFile, ::std::unique_ptr<::Core::FileSystemImpl > &&uptTransaction)
MCAPI::Core::Result readExactly(void *buf, uint64 numBytes)
MCAPI::Core::Result setPosition(uint64 position)
MCAPI::Core::Result getRemainingSize(uint64 *pSize)
MCAPI::Core::Result open(::Core::PathView fileName, ::Core::FileOpenMode openMode, ::Core::FileBufferingMode bufferingMode)
MCAPI void setLoggingEnabled(bool loggingEnabled)
Definition PathView.h:17
Definition Result.h:11
Definition source_location.h:7
Definition buffer.h:5
Definition Alias.h:14