drisw/glx: use XShm if possible
[mesa.git] / src / glx / dri2_priv.h
index b93d1587aae95e72a8604672136859ef46429d0b..30ab2cdd871984d751d47c0accd9af82192bba81 100644 (file)
  *   Kristian Høgsberg (krh@redhat.com)
  */
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 struct dri2_screen {
    struct glx_screen base;
 
@@ -43,6 +47,7 @@ struct dri2_screen {
    const __DRItexBufferExtension *texBuffer;
    const __DRI2throttleExtension *throttle;
    const __DRI2rendererQueryExtension *rendererQuery;
+   const __DRI2interopExtension *interop;
    const __DRIconfig **driver_configs;
 
    void *driver;
@@ -51,6 +56,12 @@ struct dri2_screen {
    int show_fps_interval;
 };
 
+struct dri2_context
+{
+   struct glx_context base;
+   __DRIcontext *driContext;
+};
+
 _X_HIDDEN int
 dri2_query_renderer_integer(struct glx_screen *base, int attribute,
                             unsigned int *value);
@@ -58,3 +69,16 @@ dri2_query_renderer_integer(struct glx_screen *base, int attribute,
 _X_HIDDEN int
 dri2_query_renderer_string(struct glx_screen *base, int attribute,
                            const char **value);
+
+_X_HIDDEN int
+dri2_interop_query_device_info(struct glx_context *ctx,
+                               struct mesa_glinterop_device_info *out);
+
+_X_HIDDEN int
+dri2_interop_export_object(struct glx_context *ctx,
+                           struct mesa_glinterop_export_in *in,
+                           struct mesa_glinterop_export_out *out);
+
+#ifdef __cplusplus
+}
+#endif