Merge branch 'llvm-cliptest-viewport'
[mesa.git] / src / mesa / drivers / dri / common / dri_util.h
index 0fe6f1e246ce98d78b3fc97c5c42b19d21fd229d..ffffb99b30147802bdf20320dcbbf0fff08690d2 100644 (file)
@@ -53,7 +53,7 @@
 #include <xf86drm.h>
 #include "xmlconfig.h"
 #include "main/glheader.h"
-#include "GL/internal/glcore.h"
+#include "main/mtypes.h"
 #include "GL/internal/dri_interface.h"
 
 #define GLX_BAD_CONTEXT                    5
@@ -69,7 +69,6 @@ extern const __DRIdri2Extension driDRI2Extension;
 extern const __DRIextension driReadDrawableExtension;
 extern const __DRIcopySubBufferExtension driCopySubBufferExtension;
 extern const __DRIswapControlExtension driSwapControlExtension;
-extern const __DRIframeTrackingExtension driFrameTrackingExtension;
 extern const __DRImediaStreamCounterExtension driMediaStreamCounterExtension;
 extern const __DRI2configQueryExtension dri2ConfigQueryExtension;
 
@@ -148,8 +147,9 @@ struct __DriverAPIRec {
     /**
      * Context creation callback
      */                    
-    GLboolean (*CreateContext)(const __GLcontextModes *glVis,
-                               __DRIcontext *driContextPriv,
+    GLboolean (*CreateContext)(gl_api api,
+                              const struct gl_config *glVis,
+                              __DRIcontext *driContextPriv,
                                void *sharedContextPrivate);
 
     /**
@@ -162,7 +162,7 @@ struct __DriverAPIRec {
      */
     GLboolean (*CreateBuffer)(__DRIscreen *driScrnPriv,
                               __DRIdrawable *driDrawPriv,
-                              const __GLcontextModes *glVis,
+                              const struct gl_config *glVis,
                               GLboolean pixmapBuffer);
     
     /**
@@ -512,7 +512,11 @@ struct __DRIscreenRec {
      * 
      * This pointer is never touched by the DRI layer.
      */
+#ifdef __cplusplus
+    void *priv;
+#else
     void *private;
+#endif
 
     /* Extensions provided by the loader. */
     const __DRIgetDrawableInfoExtension *getDrawableInfo;
@@ -525,12 +529,16 @@ struct __DRIscreenRec {
        int enabled;
        __DRIdri2LoaderExtension *loader;
        __DRIimageLookupExtension *image;
+       __DRIuseInvalidateExtension *useInvalidate;
     } dri2;
 
     /* The lock actually in use, old sarea or DRI2 */
     drmLock *lock;
 
+    driOptionCache optionInfo;
     driOptionCache optionCache;
+   unsigned int api_mask;
+   void *loaderPrivate;
 };
 
 extern void