| 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 |
|