You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
2.5 KiB
80 lines
2.5 KiB
/* |
|
fscallback.h - common filesystem callbacks |
|
Copyright (C) 2022 Alibek Omarov |
|
|
|
This program is free software: you can redistribute it and/or modify |
|
it under the terms of the GNU General Public License as published by |
|
the Free Software Foundation, either version 3 of the License, or |
|
(at your option) any later version. |
|
|
|
This program is distributed in the hope that it will be useful, |
|
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
GNU General Public License for more details. |
|
*/ |
|
#ifndef FSCALLBACK_H |
|
#define FSCALLBACK_H |
|
|
|
#include "filesystem.h" |
|
|
|
extern fs_api_t g_fsapi; |
|
extern fs_globals_t *FI; |
|
|
|
#define GI FI->GameInfo |
|
#define FS_Gamedir() GI->gamefolder |
|
#define FS_Title() GI->title |
|
|
|
#define FS_InitStdio (*g_fsapi.InitStdio) |
|
#define FS_ShutdownStdio (*g_fsapi.ShutdownStdio) |
|
|
|
// search path utils |
|
#define FS_Rescan (*g_fsapi.Rescan) |
|
#define FS_ClearSearchPath (*g_fsapi.ClearSearchPath) |
|
#define FS_AllowDirectPaths (*g_fsapi.AllowDirectPaths) |
|
#define FS_AddGameDirectory (*g_fsapi.AddGameDirectory) |
|
#define FS_AddGameHierarchy (*g_fsapi.AddGameHierarchy) |
|
#define FS_Search (*g_fsapi.Search) |
|
#define FS_SetCurrentDirectory (*g_fsapi.SetCurrentDirectory) |
|
#define FS_Path_f (*g_fsapi.Path_f) |
|
|
|
// gameinfo utils |
|
#define FS_LoadGameInfo (*g_fsapi.LoadGameInfo) |
|
|
|
// file ops |
|
#define FS_Open (*g_fsapi.Open) |
|
#define FS_Write (*g_fsapi.Write) |
|
#define FS_Read (*g_fsapi.Read) |
|
#define FS_Seek (*g_fsapi.Seek) |
|
#define FS_Tell (*g_fsapi.Tell) |
|
#define FS_Eof (*g_fsapi.Eof) |
|
#define FS_Flush (*g_fsapi.Flush) |
|
#define FS_Close (*g_fsapi.Close) |
|
#define FS_Gets (*g_fsapi.Gets) |
|
#define FS_UnGetc (*g_fsapi.UnGetc) |
|
#define FS_Getc (*g_fsapi.Getc) |
|
#define FS_VPrintf (*g_fsapi.VPrintf) |
|
#define FS_Printf (*g_fsapi.Printf) |
|
#define FS_Print (*g_fsapi.Print) |
|
#define FS_FileLength (*g_fsapi.FileLength) |
|
#define FS_FileCopy (*g_fsapi.FileCopy) |
|
|
|
// file buffer ops |
|
#define FS_LoadFile (*g_fsapi.LoadFile) |
|
#define FS_LoadDirectFile (*g_fsapi.LoadDirectFile) |
|
#define FS_WriteFile (*g_fsapi.WriteFile) |
|
|
|
// file hashing |
|
#define CRC32_File (*g_fsapi.CRC32_File) |
|
#define MD5_HashFile (*g_fsapi.MD5_HashFile) |
|
|
|
// filesystem ops |
|
#define FS_FileExists (*g_fsapi.FileExists) |
|
#define FS_FileTime (*g_fsapi.FileTime) |
|
#define FS_FileSize (*g_fsapi.FileSize) |
|
#define FS_Rename (*g_fsapi.Rename) |
|
#define FS_Delete (*g_fsapi.Delete) |
|
#define FS_SysFileExists (*g_fsapi.SysFileExists) |
|
#define FS_GetDiskPath (*g_fsapi.GetDiskPath) |
|
|
|
|
|
#endif // FSCALLBACK_H
|
|
|