From 40d5242f919824f37d533360af8d7ab6ad0b4722 Mon Sep 17 00:00:00 2001 From: smatz Date: Tue, 24 Jun 2008 09:05:24 +0000 Subject: (svn r13618) -Codechange: move tar-specific declarations to separate file Removes indirect dependency on and for over 40 files --- src/fileio.cpp | 1 + src/fileio.h | 22 ---------------------- src/newgrf_config.cpp | 1 + src/settings_gui.cpp | 1 + src/tar_type.h | 31 +++++++++++++++++++++++++++++++ src/town_cmd.cpp | 1 + 6 files changed, 35 insertions(+), 22 deletions(-) create mode 100644 src/tar_type.h (limited to 'src') diff --git a/src/fileio.cpp b/src/fileio.cpp index f68f6693e..56528469a 100644 --- a/src/fileio.cpp +++ b/src/fileio.cpp @@ -11,6 +11,7 @@ #include "core/alloc_func.hpp" #include "core/math_func.hpp" #include "string_func.h" +#include "tar_type.h" #ifdef WIN32 #include #else diff --git a/src/fileio.h b/src/fileio.h index c361f849a..6d4aed2b4 100644 --- a/src/fileio.h +++ b/src/fileio.h @@ -5,8 +5,6 @@ #ifndef FILEIO_H #define FILEIO_H -#include -#include #include "core/enum_type.hpp" void FioSeekTo(size_t pos, int mode); @@ -62,22 +60,6 @@ DECLARE_POSTFIX_INCREMENT(Searchpath); */ extern const char *_searchpaths[NUM_SEARCHPATHS]; -/** - * The define of a TarList. - */ -struct TarListEntry { - const char *filename; -}; -struct TarFileListEntry { - TarListEntry *tar; - size_t size; - size_t position; -}; -typedef std::map TarList; -typedef std::map TarFileList; -extern TarList _tar_list; -extern TarFileList _tar_filelist; - /** * Checks whether the given search path is a valid search path * @param sp the search path to check @@ -90,10 +72,6 @@ static inline bool IsValidSearchPath(Searchpath sp) /** Iterator for all the search paths */ #define FOR_ALL_SEARCHPATHS(sp) for (sp = SP_FIRST_DIR; sp < NUM_SEARCHPATHS; sp++) if (IsValidSearchPath(sp)) -#define FOR_ALL_TARS(tar) for (tar = _tar_filelist.begin(); tar != _tar_filelist.end(); tar++) - -typedef bool FioTarFileListCallback(const char *filename, int size, void *userdata); -FILE *FioTarFileList(const char *tar, const char *mode, size_t *filesize, FioTarFileListCallback *callback, void *userdata); void FioFCloseFile(FILE *f); FILE *FioFOpenFile(const char *filename, const char *mode = "rb", Subdirectory subdir = DATA_DIR, size_t *filesize = NULL); diff --git a/src/newgrf_config.cpp b/src/newgrf_config.cpp index 0a09c82f4..312472bd1 100644 --- a/src/newgrf_config.cpp +++ b/src/newgrf_config.cpp @@ -15,6 +15,7 @@ #include "gamelog.h" #include "network/network_type.h" +#include "tar_type.h" #include "fileio.h" #include "fios.h" #include diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index f22ca3609..5ffa1f436 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -27,6 +27,7 @@ #include "widgets/dropdown_type.h" #include "widgets/dropdown_func.h" #include "station_func.h" +#include #include "table/sprites.h" #include "table/strings.h" diff --git a/src/tar_type.h b/src/tar_type.h new file mode 100644 index 000000000..d032a0809 --- /dev/null +++ b/src/tar_type.h @@ -0,0 +1,31 @@ +/* $Id$ */ + +#ifndef TAR_TYPE_H + +/** @file tar_type.h Structs, typedefs and macros used for TAR file handling. */ + +#include +#include + +/** The define of a TarList. */ +struct TarListEntry { + const char *filename; +}; + +struct TarFileListEntry { + TarListEntry *tar; + size_t size; + size_t position; +}; + +typedef std::map TarList; +typedef std::map TarFileList; +extern TarList _tar_list; +extern TarFileList _tar_filelist; + +#define FOR_ALL_TARS(tar) for (tar = _tar_filelist.begin(); tar != _tar_filelist.end(); tar++) + +typedef bool FioTarFileListCallback(const char *filename, int size, void *userdata); +FILE *FioTarFileList(const char *tar, const char *mode, size_t *filesize, FioTarFileListCallback *callback, void *userdata); + +#endif /* TAR_TYPE_H */ diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index f0747c0fd..2b79adfc8 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -47,6 +47,7 @@ #include "functions.h" #include "animated_tile_func.h" #include "date_func.h" +#include #include "table/strings.h" #include "table/sprites.h" -- cgit v1.2.3-70-g09d2