Go to the documentation of this file.
18 #if defined(__NT__) || defined(_WIN32) || defined(WIN32)
32 #if defined(_WIN64) || defined(WIN64)
46 #if defined(WIN32) || defined(WIN64)
60 #if defined(UNIX) || defined(_UNIX) || defined(__UNIX__) \
61 || defined(__unix) || defined(__unix__) \
62 || defined(____SVR4____) || defined(__LINUX__) || defined(__sgi) \
63 || defined(__hpux) || defined(sun) || defined(__SUN__) || defined(_AIX) \
64 || defined(__EMX__) || defined(__VMS) || defined(__BEOS__)
78 #if defined(macintosh)
92 #if defined(__APPLE__) && defined(__MACH__)
105 #if defined(WINDOWS) && defined(UNIX) && defined(MACOS) && defined(MACOSX)
106 #pragma message Multiple platforms???
109 #if !defined(WIN32) && !defined(UNIX) && !defined(MACOS) && !defined(MACOSX)
110 #pragma message No known platforms, assume default
119 #if defined(_UNICODE) || defined(UNICODE) || defined(__UNICODE__)
127 #define __UNICODE__ 1
133 #if defined(MACOS) || defined(MACOSX)
142 #if defined(_MSC_VER) && _MSC_VER <= 1200
143 #define for if(true)for
144 #pragma warning(disable:4786) // MSVC6 doesn't like typenames longer than 255 chars (which generates an enormous amount of warnings).
148 #if defined(_MSC_VER) && _MSC_VER >= 1400
149 #pragma warning(disable : 4996)
160 #if defined(ZENLIB_DEBUG) && (defined(DEBUG) || defined(_DEBUG))
162 #endif // defined(ZENLIB_DEBUG) && (defined(DEBUG) || defined(_DEBUG))
171 #define UNUSED(Identifier)
175 #if !defined(SIZE_T_IS_LONG) && (defined(__LP64__) || defined(MACOSX))
176 #define SIZE_T_IS_LONG
189 const std::size_t
Error=((std::size_t)(-1));
190 const std::size_t
All=((std::size_t)(-1));
207 #if defined(__UNICODE__)
208 #if defined (_MSC_VER) && !defined (_NATIVE_WCHAR_T_DEFINED)
209 #pragma message Native wchar_t is not defined, not tested, you should put /Zc:wchar_t in compiler options
211 typedef wchar_t Char;
213 #define __T(__x) L ## __x
214 #else // defined(__UNICODE__)
218 #endif // defined(__UNICODE__)
220 typedef wchar_t wchar;
244 #define MAXTYPE_INT 8
245 typedef signed char int8s;
246 typedef unsigned char int8u;
248 #pragma message This machine has no 8-bit integertype?
253 #if UINT_MAX == 0xffff
255 #define MAXTYPE_INT 16
256 typedef signed int int16s;
257 typedef unsigned int int16u;
258 #elif USHRT_MAX == 0xffff
260 #define MAXTYPE_INT 16
261 typedef signed short int16s;
262 typedef unsigned short int16u;
264 #pragma message This machine has no 16-bit integertype?
269 #if UINT_MAX == 0xfffffffful
271 #define MAXTYPE_INT 32
272 typedef signed int int32s;
273 typedef unsigned int int32u;
274 #elif ULONG_MAX == 0xfffffffful
276 #define MAXTYPE_INT 32
277 typedef signed long int32s;
278 typedef unsigned long int32u;
279 #elif USHRT_MAX == 0xfffffffful
281 #define MAXTYPE_INT 32
282 typedef signed short int32s;
283 typedef unsigned short int32u;
285 #pragma message This machine has no 32-bit integer type?
290 #if defined(__MINGW32__) || defined(__CYGWIN32__) || defined(__UNIX__) || defined(__MACOSX__)
292 #define MAXTYPE_INT 64
293 typedef signed long long int64s;
294 typedef unsigned long long int64u;
295 #elif defined(__WIN32__)
297 #define MAXTYPE_INT 64
298 typedef signed __int64 int64s;
299 typedef unsigned __int64 int64u;
301 #pragma message This machine has no 64-bit integer type?
306 #if defined(WINDOWS) || defined(UNIX) || defined(MACOSX)
308 #define MAXTYPE_FLOAT 32
309 typedef float float32;
311 #pragma message This machine has no 32-bit float type?
316 #if defined(WINDOWS) || defined(UNIX) || defined(MACOSX)
318 #define MAXTYPE_FLOAT 64
319 typedef double float64;
321 #pragma message This machine has no 64-bit float type?
326 #if defined(WINDOWS) || defined(UNIX) || defined(MACOSX)
328 #define MAXTYPE_FLOAT 80
329 typedef long double float80;
331 #pragma message This machine has no 80-bit float type?
340 #define snwprintf swprintf
344 #if defined (_MSC_VER) && _MSC_VER < 1900
345 #define snprintf _snprintf
346 #define snwprintf _snwprintf