#ifndef _DRI_UTIL_H_
#define _DRI_UTIL_H_
-#ifdef GLX_DIRECT_RENDERING
-
#define CAPI /* XXX this should be globally defined somewhere */
-#include <inttypes.h>
-#include "glxclient.h" /* for GLXDrawable */
-#include "drm.h" /* for drm_clip_rect_t */
-#include "drm_sarea.h" /* for XF86DRISAREAPtr */
-#include "GL/internal/glcore.h" /* for __GLcontextModes */
+#ifdef DRI_NEW_INTERFACE_ONLY
+# include <GL/gl.h>
+#else
+# include "glxclient.h"
+#endif /* DRI_NEW_INTERFACE_ONLY */
+#include "drm.h"
+#include "drm_sarea.h"
+#include "GL/internal/glcore.h"
+#include "GL/internal/dri_interface.h"
+
+#define GLX_BAD_CONTEXT 5
/* This is a temporary relic. Once all drivers are converted to support
* the new interface, it can go away.
typedef struct __DRIcontextPrivateRec __DRIcontextPrivate;
typedef struct __DRIdrawablePrivateRec __DRIdrawablePrivate;
typedef struct __DRIswapInfoRec __DRIswapInfo;
+typedef struct __DRIutilversionRec2 __DRIutilversion2;
/**
/**
* Number of swapBuffers operations that have been *completed*.
*/
- uint64_t swap_count;
+ u_int64_t swap_count;
/**
* Unadjusted system time of the last buffer swap. This is the time
* swap, it has missed its deadline. If swap_interval is 0, then the
* swap deadline is 1 frame after the previous swap.
*/
- uint64_t swap_missed_count;
+ u_int64_t swap_missed_count;
/**
* Amount of time used by the last swap that missed its deadline. This
};
+/**
+ * Used to store a version which includes a major range instead of a single
+ * major version number.
+ */
+struct __DRIutilversionRec2 {
+ int major_min; /** min allowed Major version number. */
+ int major_max; /** max allowed Major version number. */
+ int minor; /**< Minor version number. */
+ int patch; /**< Patch-level. */
+};
+
extern void
__driUtilMessage(const char *f, ...);
/* Test the version of the internal GLX API. Returns a value like strcmp. */
extern int
-driCompareGLXAPIVersion( GLuint required_version );
+driCompareGLXAPIVersion( GLint required_version );
extern float
driCalculateSwapUsage( __DRIdrawablePrivate *dPriv,
int64_t last_swap_ust, int64_t current_ust );
-#endif /* GLX_DIRECT_RENDERING */
+/* Test for the GLX header glx.h */
+#ifndef GLX
+extern void
+(*glXGetProcAddress(const GLubyte *procname))( void );
+#endif
#endif /* _DRI_UTIL_H_ */