Introduction Manual Class Reference Header Reference

zoidcom_prereq.h

Go to the documentation of this file.
00001 /****************************************
00002 * zoidcom_prereq.h
00003 * prerequisites
00004 *
00005 * This file is part of the "Zoidcom Automated Networking System" application library.
00006 * Copyright (C)2002-2007 by Joerg Rueppel. See documentation for copyright and licensing details.
00007 *****************************************/
00008 
00009 #ifndef _ZOIDCOM_PREREQ_H
00010 #define _ZOIDCOM_PREREQ_H
00011 
00015 #include <cassert>
00016 #include <cstddef>
00017 #include <cstring>
00018 
00019 #ifdef WIN32
00020   #define ZCOM_PLATFORM_WIN32
00021 #endif
00022 
00023 #ifdef __linux__
00024   #define ZCOM_PLATFORM_LINUX
00025 #endif
00026 
00027 #if __APPLE__
00028   #define ZCOM_PLATFORM_MAC
00029 #endif
00030 
00031 #ifdef _BIG_ENDIAN
00032   #define ZCOM_BIG_ENDIAN
00033 #else
00034   #define ZCOM_LITTLE_ENDIAN
00035 #endif
00036 
00037 #if WIN32 && __MINGW32__ && !ZCOM_BUILD
00038   #define ZCOM_API
00039   #define ZCOM_TAPI
00040 #elif WIN32 && __MINGW32__ && ZCOM_BUILD
00041   #define ZCOM_API  __declspec(dllexport)
00042   #define ZCOM_TAPI __declspec(dllexport)
00043 #elif ZCOM_BUILD && WIN32
00044   #define ZCOM_API __declspec(dllexport)
00045   #define ZCOM_TAPI
00046 #elif WIN32
00047   #define ZCOM_API __declspec(dllimport)
00048   #define ZCOM_TAPI
00049 #elif (defined ZCOM_PLATFORM_LINUX || defined ZCOM_PLATFORM_MAC) && ZCOM_BUILD
00050   #define ZCOM_API __attribute__ ((visibility("default")))
00051   #define ZCOM_TAPI __attribute__ ((visibility("default")))
00052 #else
00053   #define ZCOM_API
00054   #define ZCOM_TAPI
00055 #endif
00056 
00057 #ifndef NULL
00058   #define NULL 0
00059 #endif
00060 
00061 // data types
00063 typedef unsigned char        zU8;
00064 #define zU8_MAX              UCHAR_MAX
00065 #define zU8_MIN              0
00066 
00067 typedef signed char          zS8;
00068 #define zS8_MAX              SCHAR_MAX
00069 #define zS8_MIN              SCHAR_MIN
00070 
00071 typedef unsigned short       zU16;
00072 #define zU16_MAX             USHRT_MAX
00073 #define zU16_MIN             0
00074 
00075 typedef signed short         zS16;
00076 #define zS16_MAX             SHRT_MAX
00077 #define zS16_MIN             SHRT_MIN
00078 
00079 typedef unsigned int         zU32;
00080 #define zU32_MAX             UINT_MAX
00081 #define zU32_MIN             0
00082 
00083 typedef signed int           zS32;
00084 #define zS32_MAX             INT_MAX
00085 #define zS32_MIN             INT_MIN
00086 
00087 typedef unsigned long long   zU64;
00088 #define zU64_MAX             0xffffffffffffffff
00089 #define zU64_MIN             0
00090 
00091 typedef signed long long     zS64;
00092 #define zS64_MAX             0x7fffffffffffffff
00093 #define zS64_MIN             0x8000000000000000
00094 
00095 typedef float                zFloat;
00097 typedef double               zDouble;
00098 
00099 #endif

This file is part of the documentation for Zoidcom. Documentation copyright © 2004-2008 by Jörg Rüppel. Generated on Sat Aug 16 15:26:49 2008 for Zoidcom by doxygen 1.4.6-NO