]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - qtypes.h
Fix a bug with r_batch_debugdynamicvertexpath in R_DrawTextureSurfaceList_Sky where...
[xonotic/darkplaces.git] / qtypes.h
index 7c525a69c234b731324103548da6f30116e836cb..6521899965ea6993427e3b0ec53424b9ee311044 100644 (file)
--- a/qtypes.h
+++ b/qtypes.h
@@ -2,28 +2,22 @@
 #ifndef QTYPES_H
 #define QTYPES_H
 
-#undef true
-#undef false
+#include <stdint.h>
 
 #ifndef __cplusplus
-typedef enum qboolean_e {false, true} qboolean;
+#ifdef _MSC_VER
+typedef enum {false, true} bool;
 #else
-typedef bool qboolean;
+#include <stdbool.h>
 #endif
-
-#if defined(WIN32) && !defined(WIN64)
-# define ssize_t long
 #endif
+typedef bool qboolean;
+
 
 #ifndef NULL
 #define NULL ((void *)0)
 #endif
 
-#ifndef FALSE
-#define FALSE false
-#define TRUE true
-#endif
-
 // up / down
 #define        PITCH   0
 
@@ -33,4 +27,40 @@ typedef bool qboolean;
 // fall over
 #define        ROLL    2
 
+#if defined(__GNUC__) || (defined(_MSC_VER) && _MSC_VER >= 1400)
+#define RESTRICT __restrict
+#else
+#define RESTRICT
+#endif
+
+typedef long long dpint64;
+typedef unsigned long long dpuint64;
+
+// LadyHavoc: upgrade the prvm to double precision for better time values
+// LadyHavoc: to be enabled when bugs are worked out...
+#define PRVM_64
+#ifdef PRVM_64
+typedef double prvm_vec_t;
+typedef long long prvm_int_t;
+typedef unsigned long long prvm_uint_t;
+#else
+typedef float prvm_vec_t;
+typedef int prvm_int_t;
+typedef unsigned int prvm_uint_t;
+#endif
+typedef prvm_vec_t prvm_vec3_t[3];
+
+#ifdef VEC_64
+typedef double vec_t;
+#else
+typedef float vec_t;
+#endif
+typedef vec_t vec2_t[2];
+typedef vec_t vec3_t[3];
+typedef vec_t vec4_t[4];
+typedef vec_t vec5_t[5];
+typedef vec_t vec6_t[6];
+typedef vec_t vec7_t[7];
+typedef vec_t vec8_t[8];
+
 #endif