(svn r13618) -Codechange: move tar-specific declarations to separate file

Removes indirect dependency on <string> and <map> for over 40 files
pull/155/head
smatz 16 years ago
parent 241435226c
commit 40d5242f91

@ -1455,6 +1455,10 @@
RelativePath=".\..\src\strings_type.h"
>
</File>
<File
RelativePath=".\..\src\tar_type.h"
>
</File>
<File
RelativePath=".\..\src\terraform_gui.h"
>

@ -1452,6 +1452,10 @@
RelativePath=".\..\src\strings_type.h"
>
</File>
<File
RelativePath=".\..\src\tar_type.h"
>
</File>
<File
RelativePath=".\..\src\terraform_gui.h"
>

@ -289,6 +289,7 @@ string_func.h
string_type.h
strings_func.h
strings_type.h
tar_type.h
terraform_gui.h
textbuf_gui.h
texteff.hpp

@ -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 <windows.h>
#else

@ -5,8 +5,6 @@
#ifndef FILEIO_H
#define FILEIO_H
#include <map>
#include <string>
#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<std::string, TarListEntry *> TarList;
typedef std::map<std::string, TarFileListEntry> 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);

@ -15,6 +15,7 @@
#include "gamelog.h"
#include "network/network_type.h"
#include "tar_type.h"
#include "fileio.h"
#include "fios.h"
#include <sys/stat.h>

@ -27,6 +27,7 @@
#include "widgets/dropdown_type.h"
#include "widgets/dropdown_func.h"
#include "station_func.h"
#include <map>
#include "table/sprites.h"
#include "table/strings.h"

@ -0,0 +1,31 @@
/* $Id$ */
#ifndef TAR_TYPE_H
/** @file tar_type.h Structs, typedefs and macros used for TAR file handling. */
#include <map>
#include <string>
/** The define of a TarList. */
struct TarListEntry {
const char *filename;
};
struct TarFileListEntry {
TarListEntry *tar;
size_t size;
size_t position;
};
typedef std::map<std::string, TarListEntry *> TarList;
typedef std::map<std::string, TarFileListEntry> 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 */

@ -47,6 +47,7 @@
#include "functions.h"
#include "animated_tile_func.h"
#include "date_func.h"
#include <map>
#include "table/strings.h"
#include "table/sprites.h"

Loading…
Cancel
Save