00001 #ifndef __TYPES_H__
00002 #define __TYPES_H__
00003
00004 #ifndef PI
00005 #define PI 3.1415926535897932384626433832795028841971693993751f
00006 #endif // PI
00007
00008 typedef unsigned char u8;
00009 typedef signed char s8;
00010 typedef unsigned short u16;
00011 typedef signed short s16;
00012 typedef unsigned long u32;
00013 typedef signed long s32;
00014 #ifdef _WIN32
00015 typedef unsigned __int64 u64;
00016 typedef signed __int64 s64;
00017 #endif // _WIN32
00018 #ifdef _LINUX
00019 typedef unsigned long long u64;
00020 typedef signed long long s64;
00021 #endif // _LINUX
00022
00023 typedef u32 KHANDLE;
00024 typedef u32 KTIME;
00025 typedef u32 KVERSION;
00026
00027 #define KSECOND (KTIME(1000))
00028 #define KMINUTE (KTIME(60000))
00029 #define KHOUR (KTIME(3600000))
00030
00031 #define KHANDLE_INVALID ((KHANDLE)-1)
00032 #define KMAKE_VERSION( _Major, _Minor ) (KVERSION(_Minor | ((_Major << 16) & 0xFFFF0000)))
00033 #define KVERSION_GETMAJOR( _Version ) (KVERSION((_Version >> 16 ) & 0xFFFF))
00034 #define KVERSION_GETMINOR( _Version ) (KVERSION(_Version & 0xFFFF))
00035
00036 #ifdef _LINUX
00037 #define stricmp strcasecmp
00038 #endif // _LINUX
00039
00040 #define SafeRelease(x) { if(x){x->Release();x=NULL;} }
00041 #define SafeDeletep(x) { if(x){delete x;x=NULL;} }
00042 #define SafeDeletev(x) { if(x){delete[] x;x=NULL;} }
00043 #define SafeFreep(x) { if(x){free(x);x=NULL;} }
00044 #define Deletep(x) { delete x; x = NULL; }
00045 #define Deletev(x) { delete[] x; x = NULL; }
00046 #define Freep(x) { free( x ); x = NULL; }
00047
00048 #define NULL 0
00049
00050 #define MIN(a,b) (a < b ? a : b)
00051 #define MAX(a,b) (a > b ? a : b)
00052
00053 #include "Common/Math.h"
00054 #include "Common/Point.h"
00055 #include "Common/Rect.h"
00056 #include "Common/Vector.h"
00057 #include "Common/Color.h"
00058 #include "Common/Str.h"
00059
00060 #endif // __TYPES_H__