git repos / blockattack-game

blame: source/code/Libs/physfs.hpp

normal view · raw

3647d72c sago007 2016-02-12 22:24 1
#ifndef _INCLUDE_PHYSFS_HPP_
3647d72c sago007 2016-02-12 22:24 2
#define _INCLUDE_PHYSFS_HPP_
3647d72c sago007 2016-02-12 22:24 3
3647d72c sago007 2016-02-12 22:24 4
#include <physfs.h>
3647d72c sago007 2016-02-12 22:24 5
#include <string>
3647d72c sago007 2016-02-12 22:24 6
#include <vector>
3647d72c sago007 2016-02-12 22:24 7
#include <iostream>
3647d72c sago007 2016-02-12 22:24 8
3647d72c sago007 2016-02-12 22:24 9
namespace PhysFS {
3647d72c sago007 2016-02-12 22:24 10
3647d72c sago007 2016-02-12 22:24 11
typedef enum {
3647d72c sago007 2016-02-12 22:24 12
	READ,
3647d72c sago007 2016-02-12 22:24 13
	WRITE,
3647d72c sago007 2016-02-12 22:24 14
	APPEND
3647d72c sago007 2016-02-12 22:24 15
} mode;
3647d72c sago007 2016-02-12 22:24 16
3647d72c sago007 2016-02-12 22:24 17
using std::string;
3647d72c sago007 2016-02-12 22:24 18
3647d72c sago007 2016-02-12 22:24 19
typedef std::vector<string> StringList;
3647d72c sago007 2016-02-12 22:24 20
3647d72c sago007 2016-02-12 22:24 21
typedef PHYSFS_uint8 uint8;
3647d72c sago007 2016-02-12 22:24 22
3647d72c sago007 2016-02-12 22:24 23
typedef PHYSFS_sint8 sint8;
3647d72c sago007 2016-02-12 22:24 24
3647d72c sago007 2016-02-12 22:24 25
typedef PHYSFS_uint16 uint16;
3647d72c sago007 2016-02-12 22:24 26
3647d72c sago007 2016-02-12 22:24 27
typedef PHYSFS_sint16 sint16;
3647d72c sago007 2016-02-12 22:24 28
3647d72c sago007 2016-02-12 22:24 29
typedef PHYSFS_uint32 uint32;
3647d72c sago007 2016-02-12 22:24 30
3647d72c sago007 2016-02-12 22:24 31
typedef PHYSFS_sint32 sint32;
3647d72c sago007 2016-02-12 22:24 32
3647d72c sago007 2016-02-12 22:24 33
typedef PHYSFS_uint64 uint64;
3647d72c sago007 2016-02-12 22:24 34
3647d72c sago007 2016-02-12 22:24 35
typedef PHYSFS_sint64 sint64;
3647d72c sago007 2016-02-12 22:24 36
3647d72c sago007 2016-02-12 22:24 37
typedef PHYSFS_StringCallback StringCallback;
3647d72c sago007 2016-02-12 22:24 38
3647d72c sago007 2016-02-12 22:24 39
typedef PHYSFS_EnumFilesCallback EnumFilesCallback;
3647d72c sago007 2016-02-12 22:24 40
3647d72c sago007 2016-02-12 22:24 41
typedef PHYSFS_Version Version;
3647d72c sago007 2016-02-12 22:24 42
3647d72c sago007 2016-02-12 22:24 43
typedef PHYSFS_Allocator Allocator;
3647d72c sago007 2016-02-12 22:24 44
3647d72c sago007 2016-02-12 22:24 45
typedef PHYSFS_ArchiveInfo ArchiveInfo;
3647d72c sago007 2016-02-12 22:24 46
3647d72c sago007 2016-02-12 22:24 47
typedef std::vector<ArchiveInfo> ArchiveInfoList;
3647d72c sago007 2016-02-12 22:24 48
3647d72c sago007 2016-02-12 22:24 49
typedef uint64 size_t;
3647d72c sago007 2016-02-12 22:24 50
3647d72c sago007 2016-02-12 22:24 51
class base_fstream {
3647d72c sago007 2016-02-12 22:24 52
protected:
3647d72c sago007 2016-02-12 22:24 53
	PHYSFS_File * const file;
3647d72c sago007 2016-02-12 22:24 54
public:
3647d72c sago007 2016-02-12 22:24 55
	base_fstream(PHYSFS_File * file);
3647d72c sago007 2016-02-12 22:24 56
	virtual ~base_fstream();
3647d72c sago007 2016-02-12 22:24 57
	size_t length();
3647d72c sago007 2016-02-12 22:24 58
};
3647d72c sago007 2016-02-12 22:24 59
3647d72c sago007 2016-02-12 22:24 60
class ifstream : public base_fstream, public std::istream {
3647d72c sago007 2016-02-12 22:24 61
public:
3647d72c sago007 2016-02-12 22:24 62
	ifstream(string const & filename);
3647d72c sago007 2016-02-12 22:24 63
	virtual ~ifstream();
3647d72c sago007 2016-02-12 22:24 64
};
3647d72c sago007 2016-02-12 22:24 65
3647d72c sago007 2016-02-12 22:24 66
class ofstream : public base_fstream, public std::ostream {
3647d72c sago007 2016-02-12 22:24 67
public:
3647d72c sago007 2016-02-12 22:24 68
	ofstream(string const & filename, mode writeMode = WRITE);
3647d72c sago007 2016-02-12 22:24 69
	virtual ~ofstream();
3647d72c sago007 2016-02-12 22:24 70
};
3647d72c sago007 2016-02-12 22:24 71
3647d72c sago007 2016-02-12 22:24 72
class fstream : public base_fstream, public std::iostream {
3647d72c sago007 2016-02-12 22:24 73
public:
3647d72c sago007 2016-02-12 22:24 74
	fstream(string const & filename, mode openMode = READ);
3647d72c sago007 2016-02-12 22:24 75
	virtual ~fstream();
3647d72c sago007 2016-02-12 22:24 76
};
3647d72c sago007 2016-02-12 22:24 77
3647d72c sago007 2016-02-12 22:24 78
Version getLinkedVersion();
3647d72c sago007 2016-02-12 22:24 79
3647d72c sago007 2016-02-12 22:24 80
void init(char const * argv0);
3647d72c sago007 2016-02-12 22:24 81
3647d72c sago007 2016-02-12 22:24 82
void deinit();
3647d72c sago007 2016-02-12 22:24 83
3647d72c sago007 2016-02-12 22:24 84
ArchiveInfoList supportedArchiveTypes();
3647d72c sago007 2016-02-12 22:24 85
3647d72c sago007 2016-02-12 22:24 86
string getDirSeparator();
3647d72c sago007 2016-02-12 22:24 87
3647d72c sago007 2016-02-12 22:24 88
void permitSymbolicLinks(bool allow);
3647d72c sago007 2016-02-12 22:24 89
3647d72c sago007 2016-02-12 22:24 90
StringList getCdRomDirs();
3647d72c sago007 2016-02-12 22:24 91
3647d72c sago007 2016-02-12 22:24 92
void getCdRomDirs(StringCallback callback, void * extra);
3647d72c sago007 2016-02-12 22:24 93
3647d72c sago007 2016-02-12 22:24 94
string getBaseDir();
3647d72c sago007 2016-02-12 22:24 95
3647d72c sago007 2016-02-12 22:24 96
string getUserDir();
3647d72c sago007 2016-02-12 22:24 97
3647d72c sago007 2016-02-12 22:24 98
string getWriteDir();
3647d72c sago007 2016-02-12 22:24 99
3647d72c sago007 2016-02-12 22:24 100
void setWriteDir(string const & newDir);
3647d72c sago007 2016-02-12 22:24 101
3647d72c sago007 2016-02-12 22:24 102
void removeFromSearchPath(string const & oldDir);
3647d72c sago007 2016-02-12 22:24 103
3647d72c sago007 2016-02-12 22:24 104
StringList getSearchPath();
3647d72c sago007 2016-02-12 22:24 105
3647d72c sago007 2016-02-12 22:24 106
void getSearchPath(StringCallback callback, void * extra);
3647d72c sago007 2016-02-12 22:24 107
3647d72c sago007 2016-02-12 22:24 108
void setSaneConfig(string const & orgName, string const & appName, string const & archiveExt, bool includeCdRoms, bool archivesFirst);
3647d72c sago007 2016-02-12 22:24 109
3647d72c sago007 2016-02-12 22:24 110
void mkdir(string const & dirName);
3647d72c sago007 2016-02-12 22:24 111
3647d72c sago007 2016-02-12 22:24 112
void deleteFile(string const & filename);
3647d72c sago007 2016-02-12 22:24 113
3647d72c sago007 2016-02-12 22:24 114
string getRealDir(string const & filename);
3647d72c sago007 2016-02-12 22:24 115
3647d72c sago007 2016-02-12 22:24 116
StringList enumerateFiles(string const & directory);
3647d72c sago007 2016-02-12 22:24 117
3647d72c sago007 2016-02-12 22:24 118
void enumerateFiles(string const & directory, EnumFilesCallback callback, void * extra);
3647d72c sago007 2016-02-12 22:24 119
3647d72c sago007 2016-02-12 22:24 120
bool exists(string const & filename);
3647d72c sago007 2016-02-12 22:24 121
3647d72c sago007 2016-02-12 22:24 122
bool isDirectory(string const & filename);
3647d72c sago007 2016-02-12 22:24 123
3647d72c sago007 2016-02-12 22:24 124
bool isSymbolicLink(string const & filename);
3647d72c sago007 2016-02-12 22:24 125
3647d72c sago007 2016-02-12 22:24 126
sint64 getLastModTime(string const & filename);
3647d72c sago007 2016-02-12 22:24 127
3647d72c sago007 2016-02-12 22:24 128
bool isInit();
3647d72c sago007 2016-02-12 22:24 129
3647d72c sago007 2016-02-12 22:24 130
bool symbolicLinksPermitted();
3647d72c sago007 2016-02-12 22:24 131
3647d72c sago007 2016-02-12 22:24 132
void setAllocator(Allocator const * allocator);
3647d72c sago007 2016-02-12 22:24 133
3647d72c sago007 2016-02-12 22:24 134
void mount(string const & newDir, string const & mountPoint, bool appendToPath);
3647d72c sago007 2016-02-12 22:24 135
3647d72c sago007 2016-02-12 22:24 136
string getMountPoint(string const & dir);
3647d72c sago007 2016-02-12 22:24 137
3647d72c sago007 2016-02-12 22:24 138
namespace Util {
3647d72c sago007 2016-02-12 22:24 139
3647d72c sago007 2016-02-12 22:24 140
sint16 swapSLE16(sint16 value);
3647d72c sago007 2016-02-12 22:24 141
3647d72c sago007 2016-02-12 22:24 142
uint16 swapULE16(uint16 value);
3647d72c sago007 2016-02-12 22:24 143
3647d72c sago007 2016-02-12 22:24 144
sint32 swapSLE32(sint32 value);
3647d72c sago007 2016-02-12 22:24 145
3647d72c sago007 2016-02-12 22:24 146
uint32 swapULE32(uint32 value);
3647d72c sago007 2016-02-12 22:24 147
3647d72c sago007 2016-02-12 22:24 148
sint64 swapSLE64(sint64 value);
3647d72c sago007 2016-02-12 22:24 149
3647d72c sago007 2016-02-12 22:24 150
uint64 swapULE64(uint64 value);
3647d72c sago007 2016-02-12 22:24 151
3647d72c sago007 2016-02-12 22:24 152
sint16 swapSBE16(sint16 value);
3647d72c sago007 2016-02-12 22:24 153
3647d72c sago007 2016-02-12 22:24 154
uint16 swapUBE16(uint16 value);
3647d72c sago007 2016-02-12 22:24 155
3647d72c sago007 2016-02-12 22:24 156
sint32 swapSBE32(sint32 value);
3647d72c sago007 2016-02-12 22:24 157
3647d72c sago007 2016-02-12 22:24 158
uint32 swapUBE32(uint32 value);
3647d72c sago007 2016-02-12 22:24 159
3647d72c sago007 2016-02-12 22:24 160
sint64 swapSBE64(sint64 value);
3647d72c sago007 2016-02-12 22:24 161
3647d72c sago007 2016-02-12 22:24 162
uint64 swapUBE64(uint64 value);
3647d72c sago007 2016-02-12 22:24 163
3647d72c sago007 2016-02-12 22:24 164
string utf8FromUcs4(uint32 const * src);
3647d72c sago007 2016-02-12 22:24 165
3647d72c sago007 2016-02-12 22:24 166
string utf8ToUcs4(char const * src);
3647d72c sago007 2016-02-12 22:24 167
3647d72c sago007 2016-02-12 22:24 168
string utf8FromUcs2(uint16 const * src);
3647d72c sago007 2016-02-12 22:24 169
3647d72c sago007 2016-02-12 22:24 170
string utf8ToUcs2(char const * src);
3647d72c sago007 2016-02-12 22:24 171
3647d72c sago007 2016-02-12 22:24 172
string utf8FromLatin1(char const * src);
3647d72c sago007 2016-02-12 22:24 173
3647d72c sago007 2016-02-12 22:24 174
}
3647d72c sago007 2016-02-12 22:24 175
3647d72c sago007 2016-02-12 22:24 176
}
3647d72c sago007 2016-02-12 22:24 177
3647d72c sago007 2016-02-12 22:24 178
#endif /* _INCLUDE_PHYSFS_HPP_ */
1970-01-01 00:00 179