static _EGLSurface * dri2_create_pbuffer_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLConfig *conf, const EGLint *attrib_list) { return dri2_create_surface(drv, disp, EGL_PBUFFER_BIT, conf, XCB_WINDOW_NONE, attrib_list); }
static _EGLSurface * dri2_create_window_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLConfig *conf, EGLNativeWindowType window, const EGLint *attrib_list) { return dri2_create_surface(drv, disp, EGL_WINDOW_BIT, conf, window, attrib_list); }
static _EGLSurface * dri2_create_pixmap_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLConfig *conf, EGLNativePixmapType pixmap, const EGLint *attrib_list) { return dri2_create_surface(drv, disp, EGL_PIXMAP_BIT, conf, pixmap, attrib_list); }
/** * Called via eglCreateWindowSurface(), drv->API.CreateWindowSurface(). */ static _EGLSurface * dri2_create_window_surface(_EGLDriver *drv, _EGLDisplay *disp, _EGLConfig *conf, EGLNativeWindowType window, const EGLint *attrib_list) { struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp); _EGLSurface *surf; surf = dri2_create_surface(drv, disp, EGL_WINDOW_BIT, conf, window, attrib_list); /* When we first create the DRI2 drawable, its swap interval on the server * side is 1. */ surf->SwapInterval = 1; /* Override that with a driconf-set value. */ drv->API.SwapInterval(drv, disp, surf, dri2_dpy->default_swap_interval); return surf; }