EGLint (*query_buffer_age)(_EGLDriver *drv, _EGLDisplay *dpy,
_EGLSurface *surf);
+ EGLBoolean (*query_surface)(_EGLDriver *drv, _EGLDisplay *dpy,
+ _EGLSurface *surf, EGLint attribute,
+ EGLint *value);
+
struct wl_buffer* (*create_wayland_buffer_from_image)(
_EGLDriver *drv, _EGLDisplay *dpy, _EGLImage *img);
const __DRI2interopExtension *interop;
int fd;
+ /* dri2_initialize/dri2_terminate increment/decrement this count, so does
+ * dri2_make_current (tracks if there are active contexts/surfaces). */
+ int ref_count;
+
int own_device;
int invalidate_available;
int min_swap_interval;
struct gbm_dri_device *gbm_dri;
#endif
- char *device_name;
char *driver_name;
__DRIdri2LoaderExtension dri2_loader_extension;
int authenticated;
int formats;
uint32_t capabilities;
+ char *device_name;
#endif
int is_render_node;
__DRIimage *front;
unsigned int visual;
#endif
-
};
struct dri2_egl_config