| 
    MGL(Win32)
    
   | 
 
ファイルデリゲートクラス [詳解]
#include <mgl_file_delegate.h>
  
公開メンバ関数 | |
| virtual bool | IsManagedSystemNativeFile () const noexcept=0 | 
| このデリゲートがシステム標準のファイルを扱うものかを取得   | |
| virtual bool | IsWritable () const noexcept=0 | 
| このデリゲートが書き込みに対応しているかを取得   | |
| virtual Result | Mount (SharedMountWork &mountWork, const PathView &path, MountAccessType accessType) noexcept=0 | 
| マウント時の処理   | |
| virtual void | Unmount (SharedMountWork &mountWork) noexcept=0 | 
| マウント解除時の処理   | |
| virtual AccessWorkPtr | Open (Result &result, SharedMountWork &mountWork, const PathView &path, OpenMode mode) noexcept=0 | 
| ファイルをオープン   | |
| virtual Result | Close (AccessWork *work) noexcept=0 | 
| ファイルをクローズ   | |
| virtual size_t | Read (AccessWork *work, Result &result, void *buffer, size_t size) noexcept=0 | 
| ファイルを読み込み   | |
| virtual size_t | Write (AccessWork *work, Result &result, const void *buffer, size_t size) noexcept=0 | 
| ファイルを書き込み   | |
| virtual size_t | Seek (AccessWork *work, Result &result, SeekType seekType, int32_t offset) noexcept=0 | 
| ストリーム位置を設定   | |
| virtual size_t | GetOffset (AccessWork *work, Result &result) const noexcept=0 | 
| ストリーム位置を取得   | |
| virtual bool | IsEOF (AccessWork *work, Result &result) const noexcept=0 | 
| ファイルストリームが終端に達しているかを取得   | |
| virtual size_t | GetSize (AccessWork *work, Result &result) const noexcept=0 | 
| オープンしているファイルのサイズを取得   | |
| virtual size_t | GetSize (MountWork *mountWork, Result &result, const PathView &path) const noexcept=0 | 
| ファイルのサイズを取得   | |
| virtual Result | MakeDirectory (MountWork *mountWork, const PathView &path) noexcept=0 | 
| ディレクトリを作成する   | |
| virtual Result | Move (MountWork *mountWork, const PathView &sourcePath, const PathView &destPath) noexcept=0 | 
| ファイルの移動・リネーム   | |
| virtual Result | Remove (MountWork *mountWork, const PathView &path) noexcept=0 | 
| ファイルの削除   | |
| virtual bool | Exists (MountWork *mountWork, Result &result, const PathView &path) noexcept=0 | 
| ファイルの存在をチェック   | |
ファイルデリゲートクラス
      
  | 
  pure virtualnoexcept | 
      
  | 
  pure virtualnoexcept | 
ファイルの存在をチェック
| [in,out] | mountWork | マウント毎のワーク | 
| [out] | result | エラー発生時の結果の格納先 | 
| [in] | path | チェックするファイルのパス | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ストリーム位置を取得
| [in] | work | アクセスするファイルのワーク | 
| [out] | result | エラー発生時の結果の格納先 | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
オープンしているファイルのサイズを取得
| [in] | work | アクセスするファイルのワーク | 
| [out] | result | エラー発生時の結果の格納先 | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルのサイズを取得
| [in,out] | mountWork | マウント毎のワーク | 
| [out] | result | エラー発生時の結果の格納先 | 
| [in] | path | サイズを取得するファイルのパス | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルストリームが終端に達しているかを取得
| [in,out] | work | アクセスするファイルのワーク | 
| [out] | result | エラー発生時の結果の格納先 | 
| true | 終端に達している | 
| false | 終端に達していない | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  nodiscardpure virtualnoexcept | 
このデリゲートがシステム標準のファイルを扱うものかを取得
| true | システム標準のファイルを扱う | 
| false | システム標準ではないファイルを扱う | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  nodiscardpure virtualnoexcept | 
      
  | 
  pure virtualnoexcept | 
ディレクトリを作成する
| [in,out] | mountWork | マウント毎のワーク | 
| [in] | path | 作成するディレクトリのパス | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
マウント時の処理
| [out] | mountWork | マウント毎に使用するワークの共有ポインタ | 
| [in] | path | マウントパス | 
| [in] | accessType | アクセスタイプ | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルの移動・リネーム
| [in,out] | mountWork | マウント毎のワーク | 
| [in] | sourcePath | 移動元のパス | 
| [in] | destPath | 移動先のパス | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルをオープン
| [out] | result | 処理結果 | 
| [in,out] | mountWork | マウント毎のワーク | 
| [in] | path | オープンするファイルのパス | 
| [in] | mode | オープンモード | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルを読み込み
| [in,out] | work | アクセスするファイルのワーク | 
| [out] | result | 処理結果 | 
| [in] | buffer | 読み込み先のアドレス | 
| [in] | size | 読み込みサイズ | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ファイルの削除
| [in,out] | mountWork | マウント毎のワーク | 
| [in] | path | 削除するファイルのパス | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
ストリーム位置を設定
| [in,out] | work | アクセスするファイルのワーク | 
| [out] | result | 処理結果 | 
| [in] | seekType | シークタイプ | 
| [in] | offset | オフセット | 
MGL::File::Win32Delegateで実装されています。
      
  | 
  pure virtualnoexcept | 
      
  | 
  pure virtualnoexcept | 
ファイルを書き込み
| [in,out] | work | アクセスするファイルのワーク | 
| [out] | result | 処理結果 | 
| [out] | buffer | 書き込み先のアドレス | 
| [in] | size | 書き込みサイズ | 
MGL::File::Win32Delegateで実装されています。