diff options
Diffstat (limited to 'src/win32/file.c')
| -rw-r--r-- | src/win32/file.c | 164 |
1 files changed, 82 insertions, 82 deletions
diff --git a/src/win32/file.c b/src/win32/file.c index 8effc0d..bed16ab 100644 --- a/src/win32/file.c +++ b/src/win32/file.c @@ -4,74 +4,74 @@ #include <windows.h> -typedef struct bh_file_s +typedef struct BH_File { char *path; int mode; int flags; HANDLE handle; -} bh_file_t; +} BH_File; -static int file_info(bh_file_t *file, - size_t *size, - const char **name); +static int BH_FileInfo(BH_File *file, + size_t *size, + const char **name); -static int file_init(bh_file_t *file, - const char *path); +static int BH_FileInit(BH_File *file, + const char *path); -static int file_destroy(bh_file_t *file); +static int BH_FileDestroy(BH_File *file); -static int file_open(bh_file_t *file, - int *mode); +static int BH_FileOpen(BH_File *file, + int *mode); -static int file_close(bh_file_t *file); +static int BH_FileClose(BH_File *file); -static int file_read(bh_file_t *file, - char *data, - size_t *size); +static int BH_FileRead(BH_File *file, + char *data, + size_t *size); -static int file_write(bh_file_t *file, - const char *data, - size_t *size); +static int BH_FileWrite(BH_File *file, + const char *data, + size_t *size); -static int file_peek(bh_file_t *file, - char *data, - size_t *size); +static int BH_FilePeek(BH_File* file, + char *data, + size_t *size); -static int file_flush(bh_file_t *file); +static int BH_FileFlush(BH_File *file); -static int file_seek(bh_file_t *file, - int64_t *pos, - int *dir); +static int BH_FileSeek(BH_File *file, + int64_t *pos, + int *dir); -static int file_tell(bh_file_t *file, - int64_t *pos); +static int BH_FileTell(BH_File *file, + int64_t *pos); -static int file_size(bh_file_t *file, - int64_t *size); +static int BH_FileSize(BH_File *file, + int64_t *size); -static int file_flags(bh_file_t *file); +static int BH_FileFlags(BH_File *file); -static int file_clear(bh_file_t *file); +static int BH_FileClear(BH_File *file); -static int file_info(bh_file_t *file, - size_t *size, - const char **name) +static int BH_FileInfo(BH_File *file, + size_t *size, + const char **name) { static const char classname[] = BH_FILE_CLASSNAME; @@ -84,8 +84,8 @@ static int file_info(bh_file_t *file, } -static int file_init(bh_file_t *file, - const char *path) +static int BH_FileInit(BH_File *file, + const char *path) { /* Check if path is valid */ if (!path) @@ -101,11 +101,11 @@ static int file_init(bh_file_t *file, } -static int file_destroy(bh_file_t *file) +static int BH_FileDestroy(BH_File *file) { /* Close the file handle on destruction */ if (file->handle != INVALID_HANDLE_VALUE) - file_close(file); + BH_FileClose(file); /* Free path string */ free(file->path); @@ -114,14 +114,14 @@ static int file_destroy(bh_file_t *file) } -static int file_open(bh_file_t *file, - int *mode) +static int BH_FileOpen(BH_File *file, + int *mode) { DWORD access = 0, how = 0; /* Check if file is already openned */ if (file->handle != INVALID_HANDLE_VALUE) - return BH_OK; + return BH_ERROR; /* Determine read/write access flags */ if (*mode & BH_IO_READ) @@ -169,7 +169,7 @@ static int file_open(bh_file_t *file, } -static int file_close(bh_file_t *file) +static int BH_FileClose(BH_File *file) { /* If file is opened - close it */ if (file->handle == INVALID_HANDLE_VALUE) @@ -183,9 +183,9 @@ static int file_close(bh_file_t *file) } -static int file_read(bh_file_t *file, - char *data, - size_t *size) +static int BH_FileRead(BH_File *file, + char *data, + size_t *size) { DWORD readed; @@ -212,9 +212,9 @@ error: } -static int file_write(bh_file_t *file, - const char *data, - size_t *size) +static int BH_FileWrite(BH_File *file, + const char *data, + size_t *size) { DWORD written; @@ -251,28 +251,28 @@ error: } -static int file_peek(bh_file_t *file, - char *data, - size_t *size) +static int BH_FilePeek(BH_File *file, + char *data, + size_t *size) { int64_t position; int direction; /* Read data from the file */ - if (file_read(file, data, size)) + if (BH_FileRead(file, data, size)) return BH_ERROR; /* Backtrack by the read amount */ position = -((int64_t)*size); direction = BH_IO_SEEK_CUR; - if (file_seek(file, &position, &direction)) + if (BH_FileSeek(file, &position, &direction)) return BH_ERROR; return BH_OK; } -static int file_flush(bh_file_t *file) +static int BH_FileFlush(BH_File *file) { /* Check if file is opened */ if (file->handle == INVALID_HANDLE_VALUE) @@ -288,9 +288,9 @@ error: } -static int file_seek(bh_file_t *file, - int64_t *pos, - int *dir) +static int BH_FileSeek(BH_File *file, + int64_t *pos, + int *dir) { LARGE_INTEGER position; @@ -311,8 +311,8 @@ error: } -static int file_tell(bh_file_t *file, - int64_t *pos) +static int BH_FileTell(BH_File *file, + int64_t *pos) { LARGE_INTEGER dummy, position; @@ -334,8 +334,8 @@ error: } -static int file_size(bh_file_t *file, - int64_t *size) +static int BH_FileSize(BH_File *file, + int64_t *size) { LARGE_INTEGER dummy; @@ -356,7 +356,7 @@ error: } -static int file_flags(bh_file_t *file) +static int BH_FileFlags(BH_File *file) { /* If file handle is valid - append IO_OPEN flag */ if (file->handle != INVALID_HANDLE_VALUE) @@ -365,7 +365,7 @@ static int file_flags(bh_file_t *file) } -static int file_clear(bh_file_t *file) +static int BH_FileClear(BH_File *file) { /* Clear IO_ERROR flag */ file->flags &= ~BH_IO_FLAG_ERROR; @@ -373,33 +373,33 @@ static int file_clear(bh_file_t *file) } -static int file_proc(bh_file_t *file, - int type, - void *arg1, - void *arg2) +static int BH_FileCallback(BH_File *file, + int type, + void *arg1, + void *arg2) { switch (type) { - case BH_IO_INFO_CB: return file_info(file, (size_t *)arg1, (const char **)arg2); - case BH_IO_INIT_CB: return file_init(file, (const char *)arg1); - case BH_IO_DESTROY_CB: return file_destroy(file); - case BH_IO_OPEN_CB: return file_open(file, (int *)arg1); - case BH_IO_CLOSE_CB: return file_close(file); - case BH_IO_READ_CB: return file_read(file, (char *)arg1, (size_t *)arg2); - case BH_IO_WRITE_CB: return file_write(file, (const char *)arg1, (size_t *)arg2); - case BH_IO_PEEK_CB: return file_peek(file, (char *)arg1, (size_t *)arg2); - case BH_IO_FLUSH_CB: return file_flush(file); - case BH_IO_SEEK_CB: return file_seek(file, (int64_t *)arg1, (int *)arg2); - case BH_IO_TELL_CB: return file_tell(file, (int64_t *)arg1); - case BH_IO_SIZE_CB: return file_size(file, (int64_t *)arg1); - case BH_IO_FLAGS_CB: return file_flags(file); - case BH_IO_CLEAR_CB: return file_clear(file); + case BH_IO_INFO_CB: return BH_FileInfo(file, (size_t *)arg1, (const char **)arg2); + case BH_IO_INIT_CB: return BH_FileInit(file, (const char *)arg1); + case BH_IO_DESTROY_CB: return BH_FileDestroy(file); + case BH_IO_OPEN_CB: return BH_FileOpen(file, (int *)arg1); + case BH_IO_CLOSE_CB: return BH_FileClose(file); + case BH_IO_READ_CB: return BH_FileRead(file, (char *)arg1, (size_t *)arg2); + case BH_IO_WRITE_CB: return BH_FileWrite(file, (const char *)arg1, (size_t *)arg2); + case BH_IO_PEEK_CB: return BH_FilePeek(file, (char *)arg1, (size_t *)arg2); + case BH_IO_FLUSH_CB: return BH_FileFlush(file); + case BH_IO_SEEK_CB: return BH_FileSeek(file, (int64_t *)arg1, (int *)arg2); + case BH_IO_TELL_CB: return BH_FileTell(file, (int64_t *)arg1); + case BH_IO_SIZE_CB: return BH_FileSize(file, (int64_t *)arg1); + case BH_IO_FLAGS_CB: return BH_FileFlags(file); + case BH_IO_CLEAR_CB: return BH_FileClear(file); default: return BH_NOIMPL; } } -bh_io_t *bh_file_new(const char *path) +BH_IO *BH_FileNew(const char *path) { - return bh_io_new((bh_io_func_t)file_proc, (void *)path); + return BH_IONew((BH_IOCallback)BH_FileCallback, (void *)path); } |
