mirror of
https://github.com/akuker/RASCSI.git
synced 2025-01-11 09:29:53 +00:00
Translate code commends into English, removing redundant ones (#214)
This commit is contained in:
parent
7a5b0183d8
commit
18b3f088af
@ -4,7 +4,7 @@
|
||||
//
|
||||
// Copyright (C) 2001-2006 PI.(ytanaka@ipc-tokai.or.jp)
|
||||
// Copyright (C) 2010-2020 GIMONS
|
||||
// [ ファイルI/O(RaSCSI用サブセット) ]
|
||||
// [ File I/O (Subset for RaSCSI) ]
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
@ -15,95 +15,64 @@
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// ファイルI/O
|
||||
// File I/O
|
||||
//
|
||||
//===========================================================================
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// コンストラクタ
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
Fileio::Fileio()
|
||||
{
|
||||
// ワーク初期化
|
||||
// Initialize work
|
||||
handle = -1;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// デストラクタ
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
Fileio::~Fileio()
|
||||
{
|
||||
ASSERT(handle == -1);
|
||||
|
||||
// Releaseでの安全策
|
||||
// Safety measure for Release
|
||||
Close();
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// ロード
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Load(const Filepath& path, void *buffer, int size)
|
||||
{
|
||||
ASSERT(buffer);
|
||||
ASSERT(size > 0);
|
||||
ASSERT(handle < 0);
|
||||
|
||||
// オープン
|
||||
if (!Open(path, ReadOnly)) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// 読み込み
|
||||
if (!Read(buffer, size)) {
|
||||
Close();
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// クローズ
|
||||
Close();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// セーブ
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Save(const Filepath& path, void *buffer, int size)
|
||||
{
|
||||
ASSERT(buffer);
|
||||
ASSERT(size > 0);
|
||||
ASSERT(handle < 0);
|
||||
|
||||
// オープン
|
||||
if (!Open(path, WriteOnly)) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// 書き込み
|
||||
if (!Write(buffer, size)) {
|
||||
Close();
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// クローズ
|
||||
Close();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// オープン
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Open(const char *fname, OpenMode mode, BOOL directIO)
|
||||
{
|
||||
mode_t omode;
|
||||
@ -111,28 +80,24 @@ BOOL Fileio::Open(const char *fname, OpenMode mode, BOOL directIO)
|
||||
ASSERT(fname);
|
||||
ASSERT(handle < 0);
|
||||
|
||||
// ヌル文字列からの読み込みは必ず失敗させる
|
||||
// Always fail a read from a null array
|
||||
if (fname[0] == _T('\0')) {
|
||||
handle = -1;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// デフォルトモード
|
||||
// Default mode
|
||||
omode = directIO ? O_DIRECT : 0;
|
||||
|
||||
// モード別
|
||||
switch (mode) {
|
||||
// 読み込みのみ
|
||||
case ReadOnly:
|
||||
handle = open(fname, O_RDONLY | omode);
|
||||
break;
|
||||
|
||||
// 書き込みのみ
|
||||
case WriteOnly:
|
||||
handle = open(fname, O_CREAT | O_WRONLY | O_TRUNC | omode, 0666);
|
||||
break;
|
||||
|
||||
// 読み書き両方
|
||||
case ReadWrite:
|
||||
// CD-ROMからの読み込みはRWが成功してしまう
|
||||
if (access(fname, 0x06) != 0) {
|
||||
@ -141,13 +106,12 @@ BOOL Fileio::Open(const char *fname, OpenMode mode, BOOL directIO)
|
||||
handle = open(fname, O_RDWR | omode);
|
||||
break;
|
||||
|
||||
// それ以外
|
||||
default:
|
||||
ASSERT(FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
// 結果評価
|
||||
// Evaluate results
|
||||
if (handle == -1) {
|
||||
return FALSE;
|
||||
}
|
||||
@ -156,61 +120,36 @@ BOOL Fileio::Open(const char *fname, OpenMode mode, BOOL directIO)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// オープン
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Open(const char *fname, OpenMode mode)
|
||||
{
|
||||
|
||||
return Open(fname, mode, FALSE);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// オープン
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Open(const Filepath& path, OpenMode mode)
|
||||
{
|
||||
|
||||
return Open(path.GetPath(), mode);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// オープン
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::OpenDIO(const char *fname, OpenMode mode)
|
||||
{
|
||||
|
||||
// O_DIRECT付きでオープン
|
||||
// Open with included O_DIRECT
|
||||
if (!Open(fname, mode, TRUE)) {
|
||||
// 通常モードリトライ(tmpfs等)
|
||||
// Normal mode retry (tmpfs etc.)
|
||||
return Open(fname, mode, FALSE);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// オープン
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::OpenDIO(const Filepath& path, OpenMode mode)
|
||||
{
|
||||
|
||||
return OpenDIO(path.GetPath(), mode);
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// 読み込み
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Read(void *buffer, int size)
|
||||
{
|
||||
int count;
|
||||
@ -219,7 +158,6 @@ BOOL Fileio::Read(void *buffer, int size)
|
||||
ASSERT(size > 0);
|
||||
ASSERT(handle >= 0);
|
||||
|
||||
// 読み込み
|
||||
count = read(handle, buffer, size);
|
||||
if (count != size) {
|
||||
return FALSE;
|
||||
@ -228,11 +166,6 @@ BOOL Fileio::Read(void *buffer, int size)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// 書き込み
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Write(const void *buffer, int size)
|
||||
{
|
||||
int count;
|
||||
@ -241,7 +174,6 @@ BOOL Fileio::Write(const void *buffer, int size)
|
||||
ASSERT(size > 0);
|
||||
ASSERT(handle >= 0);
|
||||
|
||||
// 書き込み
|
||||
count = write(handle, buffer, size);
|
||||
if (count != size) {
|
||||
return FALSE;
|
||||
@ -250,17 +182,12 @@ BOOL Fileio::Write(const void *buffer, int size)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// シーク
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
BOOL Fileio::Seek(off_t offset, BOOL relative)
|
||||
{
|
||||
ASSERT(handle >= 0);
|
||||
ASSERT(offset >= 0);
|
||||
|
||||
// 相対シークならオフセットに現在値を追加
|
||||
// Add current position in case of relative seek
|
||||
if (relative) {
|
||||
offset += GetFilePos();
|
||||
}
|
||||
@ -272,11 +199,6 @@ BOOL Fileio::Seek(off_t offset, BOOL relative)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// ファイルサイズ取得
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
off_t Fileio::GetFileSize()
|
||||
{
|
||||
off_t cur;
|
||||
@ -284,40 +206,30 @@ off_t Fileio::GetFileSize()
|
||||
|
||||
ASSERT(handle >= 0);
|
||||
|
||||
// ファイル位置を64bitで取得
|
||||
// Get file position in 64bit
|
||||
cur = GetFilePos();
|
||||
|
||||
// ファイルサイズを64bitで取得
|
||||
// Get file size in64bitで
|
||||
end = lseek(handle, 0, SEEK_END);
|
||||
|
||||
// 位置を元に戻す
|
||||
// Return to start position
|
||||
Seek(cur);
|
||||
|
||||
return end;
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// ファイル位置取得
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
off_t Fileio::GetFilePos() const
|
||||
{
|
||||
off_t pos;
|
||||
|
||||
ASSERT(handle >= 0);
|
||||
|
||||
// ファイル位置を64bitで取得
|
||||
// Get file position in 64bit
|
||||
pos = lseek(handle, 0, SEEK_CUR);
|
||||
return pos;
|
||||
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
// クローズ
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
void Fileio::Close()
|
||||
{
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
//
|
||||
// Copyright (C) 2001-2005 PI.(ytanaka@ipc-tokai.or.jp)
|
||||
// Copyright (C) 2013-2020 GIMONS
|
||||
// [ ファイルI/O(RaSCSI用サブセット) ]
|
||||
// [ File I/O (Subset for RaSCSI) ]
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// マクロ(Load,Save用)
|
||||
// Macros (for Load, Save)
|
||||
//
|
||||
//===========================================================================
|
||||
#define PROP_IMPORT(f, p) \
|
||||
@ -30,56 +30,40 @@
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// ファイルI/O
|
||||
// File I/O
|
||||
//
|
||||
//===========================================================================
|
||||
class Fileio
|
||||
{
|
||||
public:
|
||||
enum OpenMode {
|
||||
ReadOnly, // 読み込みのみ
|
||||
WriteOnly, // 書き込みのみ
|
||||
ReadWrite // 読み書き両方
|
||||
ReadOnly,
|
||||
WriteOnly,
|
||||
ReadWrite
|
||||
};
|
||||
|
||||
public:
|
||||
Fileio();
|
||||
// コンストラクタ
|
||||
virtual ~Fileio();
|
||||
// デストラクタ
|
||||
BOOL Load(const Filepath& path, void *buffer, int size);
|
||||
// ROM,RAMロード
|
||||
BOOL Save(const Filepath& path, void *buffer, int size);
|
||||
// RAMセーブ
|
||||
BOOL Load(const Filepath& path, void *buffer, int size); // Load ROM, RAM
|
||||
BOOL Save(const Filepath& path, void *buffer, int size); // Save RAM
|
||||
|
||||
BOOL Open(const char *fname, OpenMode mode);
|
||||
// オープン
|
||||
BOOL Open(const Filepath& path, OpenMode mode);
|
||||
// オープン
|
||||
BOOL OpenDIO(const char *fname, OpenMode mode);
|
||||
// オープン
|
||||
BOOL OpenDIO(const Filepath& path, OpenMode mode);
|
||||
// オープン
|
||||
BOOL Seek(off_t offset, BOOL relative = FALSE);
|
||||
// シーク
|
||||
BOOL Read(void *buffer, int size);
|
||||
// 読み込み
|
||||
BOOL Write(const void *buffer, int size);
|
||||
// 書き込み
|
||||
off_t GetFileSize();
|
||||
// ファイルサイズ取得
|
||||
off_t GetFilePos() const;
|
||||
// ファイル位置取得
|
||||
void Close();
|
||||
// クローズ
|
||||
BOOL IsValid() const { return (BOOL)(handle != -1); }
|
||||
// 有効チェック
|
||||
|
||||
private:
|
||||
BOOL Open(const char *fname, OpenMode mode, BOOL directIO);
|
||||
// オープン
|
||||
|
||||
int handle; // ファイルハンドル
|
||||
int handle; // File handle
|
||||
};
|
||||
|
||||
#endif // fileio_h
|
||||
|
Loading…
x
Reference in New Issue
Block a user