1 /*************************************************************************
2  *                                                                       *
3  * Tokamak Physics Engine, Copyright (C) 2002-2007 David Lam.            *
4  * All rights reserved.  Email: david@tokamakphysics.com                 *
5  *                       Web: www.tokamakphysics.com                     *
6  *                                                                       *
7  * This library is distributed in the hope that it will be useful,       *
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of        *
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files    *
10  * LICENSE.TXT for more details.                                         *
11  *                                                                       *
12  *************************************************************************/
13 
14 #ifndef NE_TYPE_H
15 #define NE_TYPE_H
16 
17 #include <stdarg.h>
18 //#include <tchar.h>
19 //#include <strsafe.h>
20 ///////////////////////////////////////////////////////////////////////////
21 // DEFINES
22 ///////////////////////////////////////////////////////////////////////////
23 
24 #ifdef NULL
25 #undef NULL
26 #endif
27 
28 #ifdef TRUE
29 #undef TRUE
30 #endif
31 
32 #ifdef FALSE
33 #undef FALSE
34 #endif
35 
36 ///////////////////////////////////////////////////////////////////////////
37 
38 #define FALSE       0                   // make sure that we know what false is
39 #define TRUE        1                   // Make sure that we know what true is
40 #define NULL        0                   // Make sure that null does have a type
41 
42 ///////////////////////////////////////////////////////////////////////////
43 // BASIC TYPES
44 ///////////////////////////////////////////////////////////////////////////
45 
46 typedef unsigned char       u8;
47 typedef unsigned short      u16;
48 typedef unsigned int        u32;
49 typedef signed   char       s8;
50 typedef signed   short      s16;
51 typedef signed   int        s32;
52 typedef float				f32;
53 typedef double              f64;
54 typedef u8                  neByte;
55 typedef s32                 neErr;
56 typedef s32                 neBool;
57 
58 #if _MSC_VER
59 	typedef signed   __int64    s64;
60 	typedef unsigned __int64    u64;
61 	#define neFinite _finite
62 	#define inline   __forceinline       // Make sure that the compiler inlines when we tell him
63 	#define NEINLINE __forceinline
64 	const char PATH_SEP = '\\';
65 #elif defined __GNUC__
66 	typedef signed long long    s64;
67 	typedef unsigned long long  u64;
68 	#define neFinite isfinite
69 	#define NEINLINE inline
70 	const char PATH_SEP = '/';
71 #endif
72 
73 #endif //NE_TYPE_H
74