X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fmisc.h;h=431d59139850d925f7343340dc26dcdfeb06ff57;hb=142d88521dfcde187ea315279d79203c00e1b0f3;hp=12c28c3264c8a0b69fd79f77cb1c8c3735419e6a;hpb=297ee9b33dab3bca9433befc81d7c7ce91450dd0;p=rocksndiamonds.git diff --git a/src/libgame/misc.h b/src/libgame/misc.h index 12c28c32..431d5913 100644 --- a/src/libgame/misc.h +++ b/src/libgame/misc.h @@ -78,25 +78,37 @@ /* structure definitions */ -struct DirectoryEntry +typedef struct +{ + char *filename; + FILE *file; + boolean end_of_file; + +#if defined(PLATFORM_ANDROID) + boolean file_is_asset; + SDL_RWops *asset_file; +#endif +} File; + +typedef struct { boolean is_directory; char *basename; char *filename; -}; +} DirectoryEntry; -struct Directory +typedef struct { char *filename; DIR *dir; - struct DirectoryEntry *dir_entry; + DirectoryEntry *dir_entry; #if defined(PLATFORM_ANDROID) boolean directory_is_asset; SDL_RWops *asset_toc_file; char *current_entry; #endif -}; +} Directory; /* function definitions */ @@ -212,10 +224,15 @@ void deleteNodeFromList(ListNode **, char *, void (*function)(void *)); ListNode *getNodeFromKey(ListNode *, char *); int getNumNodes(ListNode *); -struct Directory *openDirectory(char *); -int closeDirectory(struct Directory *); -struct DirectoryEntry *readDirectory(struct Directory *); -void freeDirectoryEntry(struct DirectoryEntry *); +File *openFile(char *, char *); +int closeFile(File *); +int checkEndOfFile(File *); +char *getStringFromFile(File *, char *, int); + +Directory *openDirectory(char *); +int closeDirectory(Directory *); +DirectoryEntry *readDirectory(Directory *); +void freeDirectoryEntry(DirectoryEntry *); boolean fileExists(char *); boolean FileIsGraphic(char *);