11#ifndef INCGUARD_MGL_FILE_HANDLE_H_1611364672
12#define INCGUARD_MGL_FILE_HANDLE_H_1611364672
43 [[nodiscard]] constexpr
bool IsOpen() const noexcept
45 return (_work) ? _work->IsOpen() :
false;
48 size_t Read(
void *buffer,
size_t size)
noexcept;
49 size_t Write(
const void *buffer,
size_t size)
noexcept;
52 size_t Skip(
size_t size)
noexcept;
53 [[nodiscard]]
size_t GetOffset() noexcept;
54 [[nodiscard]]
bool IsEOF() noexcept;
55 [[nodiscard]]
size_t GetSize() noexcept;
75 [[nodiscard]]
constexpr bool HasError() const noexcept
91 : _work(std::move(other._work))
92 , _result(other._result)
110 _work = std::move(other._work);
111 _result = other._result;
ファイルハンドルクラス
Definition mgl_file_handle.h:20
constexpr bool IsOpen() const noexcept
ファイルがオープンされているかを取得
Definition mgl_file_handle.h:43
constexpr bool HasError() const noexcept
最後の処理でエラーが発生しているかの取得
Definition mgl_file_handle.h:75
constexpr const Result & GetResult() const noexcept
処理結果の取得
Definition mgl_file_handle.h:63
Handle & operator=(Handle &&other) noexcept
ムーブ代入演算
Definition mgl_file_handle.h:104
bool IsEOF() noexcept
ファイルストリームが終端に達しているかを取得
Definition mgl_file_handle.cc:155
Handle(Handle &&other) noexcept
ムーブコンストラクタ
Definition mgl_file_handle.h:90
size_t GetOffset() noexcept
ストリーム位置を取得
Definition mgl_file_handle.cc:141
Result Open(const PathView &path, OpenMode mode=OpenMode::Read) noexcept
ファイルをオープン
Definition mgl_file_handle.cc:39
Result Close() noexcept
ファイルをクローズ
Definition mgl_file_handle.cc:53
size_t Seek(SeekType seekType, int32_t offset) noexcept
ストリーム位置を設定
Definition mgl_file_handle.cc:102
constexpr Handle() noexcept
コンストラクタ
Definition mgl_file_handle.h:27
size_t GetSize() noexcept
オープンしているファイルのサイズを取得
Definition mgl_file_handle.cc:167
size_t Skip(size_t size) noexcept
ストリーム位置をスキップ
Definition mgl_file_handle.cc:129
文字列の参照のみを行うファイルパスクラス
Definition mgl_file_path_view.h:20
constexpr bool HasError() const noexcept
エラーが発生しているかを取得
Definition mgl_result_wrapper.h:151
STL::unique_ptr< AccessWork > AccessWorkPtr
ファイルアクセスのためのワークのポインタ型
Definition mgl_file_access_work.h:130
SeekType
シークタイプ
Definition mgl_file_defs.h:63
OpenMode
オープンモード
Definition mgl_file_defs.h:48