]> de.git.xonotic.org Git - xonotic/darkplaces.git/blob - qtypes.h
Use SDL_opengl.h and SDL_opengl_ext.h headers instead of doing our own defines -...
[xonotic/darkplaces.git] / qtypes.h
1
2 #ifndef QTYPES_H
3 #define QTYPES_H
4
5 #undef true
6 #undef false
7
8 #ifndef __cplusplus
9 typedef enum qboolean_e {false, true} qboolean;
10 #else
11 typedef bool qboolean;
12 #endif
13
14 #ifndef NULL
15 #define NULL ((void *)0)
16 #endif
17
18 #ifndef FALSE
19 #define FALSE false
20 #define TRUE true
21 #endif
22
23 // up / down
24 #define PITCH   0
25
26 // left / right
27 #define YAW             1
28
29 // fall over
30 #define ROLL    2
31
32 #if defined(__GNUC__) || (defined(_MSC_VER) && _MSC_VER >= 1400)
33 #define RESTRICT __restrict
34 #else
35 #define RESTRICT
36 #endif
37
38 typedef long long dpint64;
39 typedef unsigned long long dpuint64;
40
41 // LordHavoc: upgrade the prvm to double precision for better time values
42 // LordHavoc: to be enabled when bugs are worked out...
43 #define PRVM_64
44 #ifdef PRVM_64
45 typedef double prvm_vec_t;
46 typedef long long prvm_int_t;
47 typedef unsigned long long prvm_uint_t;
48 #else
49 typedef float prvm_vec_t;
50 typedef int prvm_int_t;
51 typedef unsigned int prvm_uint_t;
52 #endif
53 typedef prvm_vec_t prvm_vec3_t[3];
54
55 #ifdef VEC_64
56 typedef double vec_t;
57 #else
58 typedef float vec_t;
59 #endif
60 typedef vec_t vec2_t[2];
61 typedef vec_t vec3_t[3];
62 typedef vec_t vec4_t[4];
63 typedef vec_t vec5_t[5];
64 typedef vec_t vec6_t[6];
65 typedef vec_t vec7_t[7];
66 typedef vec_t vec8_t[8];
67
68 #endif