00001 #ifndef _FS_H 00002 #define _FS_H 00003 00004 #include "race.h" 00005 #include <stdio.h> 00006 00007 /** \file fs.h Definitions for filesystem 00008 * 00009 */ 00010 00011 /** types of files - they have different locations in filesystem */ 00012 enum { 00013 FT_DATA = 0, 00014 FT_SAVE = 1, 00015 FT_AUDIO, 00016 FT_VIDEO, 00017 FT_IMAGE, 00018 FT_MIDI 00019 }; 00020 00021 /** used for saved games */ 00022 struct ffblk { 00023 char ff_name[64]; 00024 int ff_ftime; 00025 int ff_fdate; 00026 }; 00027 00028 extern FILE* sOpen(const char *name, const char *mode, int type); 00029 extern char* locate_file(const char *name, int type); 00030 extern FILE* open_gamedat(const char *name); 00031 extern FILE* open_savedat(const char *name, const char *mode); 00032 extern char *slurp_gamedat(const char *name); 00033 extern int create_save_dir(void); 00034 extern int remove_savedat(const char *name); 00035 extern int first_saved_game (struct ffblk *ffblk); 00036 extern int next_saved_game (struct ffblk *ffblk); 00037 extern void fix_pathsep(char *path); 00038 00039 #endif /* _FS_H */