DRI2: Drop sarea, implement swap buffers in the X server.
[mesa.git] / src / glx / x11 / dri2.h
index 1dfd0448b2f3e7154987c245b5ca829028413771..e57c4ce644f9f1c4a795a109b193fcdef1f7a58d 100644 (file)
 #ifndef _DRI2_H_
 #define _DRI2_H_
 
+typedef struct {
+    unsigned int attachment;
+    unsigned int name;
+    unsigned int pitch;
+    unsigned int cpp;
+    unsigned int flags;
+} DRI2Buffer;
+
 extern Bool
 DRI2QueryExtension(Display *display, int *eventBase, int *errorBase);
 extern Bool
@@ -42,12 +50,17 @@ DRI2Connect(Display *display, int screen,
            char **driverName, char **busId, unsigned int *sareaHandle);
 extern Bool
 DRI2AuthConnection(Display *display, int screen, drm_magic_t magic);
-extern Bool
-DRI2CreateDrawable(Display *display, XID drawable,
-                  unsigned int *handle, unsigned int *head);
+extern void
+DRI2CreateDrawable(Display *display, XID drawable);
 extern void
 DRI2DestroyDrawable(Display *display, XID handle);
-extern Bool
-DRI2ReemitDrawableInfo(Display *dpy, XID handle, unsigned int *head);
+extern DRI2Buffer *
+DRI2GetBuffers(Display *dpy, XID drawable,
+              int *width, int *height,
+              unsigned int *attachments, int count,
+              int *outCount);
+extern void
+DRI2SwapBuffers(Display *dpy, XID drawable,
+               int x, int y, int width, int height);
 
 #endif