void ws_passthroughImageKHR(EGLenum *target, EGLClientBuffer *buffer) { _init_ws(); return ws->passthroughImageKHR(target, buffer); }
const char *ws_eglQueryString(EGLDisplay dpy, EGLint name, const char *(*real_eglQueryString)(EGLDisplay dpy, EGLint name)) { _init_ws(); return ws->eglQueryString(dpy, name, real_eglQueryString); }
void ws_DestroyWindow(EGLNativeWindowType win) { _init_ws(); return ws->DestroyWindow(win); }
__eglMustCastToProperFunctionPointerType ws_eglGetProcAddress(const char *procname) { _init_ws(); return ws->eglGetProcAddress(procname); }
int ws_IsValidDisplay(EGLNativeDisplayType display) { _init_ws(); return ws->IsValidDisplay(display); }
EGLNativeWindowType ws_CreateWindow(EGLNativeWindowType win, EGLNativeDisplayType display) { _init_ws(); return ws->CreateWindow(win, display); }
void ws_passthroughImageKHR(EGLContext *ctx, EGLenum *target, EGLClientBuffer *buffer, const EGLint **attrib_list) { _init_ws(); return ws->passthroughImageKHR(ctx, target, buffer, attrib_list); }
void ws_prepareSwap(EGLDisplay dpy, EGLNativeWindowType win, EGLint *damage_rects, EGLint damage_n_rects) { _init_ws(); if (ws->prepareSwap) ws->prepareSwap(dpy, win, damage_rects, damage_n_rects); }
EGLNativeWindowType ws_CreateWindow(EGLNativeWindowType win, struct _EGLDisplay *display) { _init_ws(); return ws->CreateWindow(win, display); }
void ws_Terminate(struct _EGLDisplay *dpy) { _init_ws(); ws->Terminate(dpy); }
struct _EGLDisplay *ws_GetDisplay(EGLNativeDisplayType display) { _init_ws(); return ws->GetDisplay(display); }
void ws_setSwapInterval(EGLDisplay dpy, EGLNativeWindowType win, EGLint interval) { _init_ws(); if (ws->setSwapInterval) ws->setSwapInterval(dpy, win, interval); }
void ws_finishSwap(EGLDisplay dpy, EGLNativeWindowType win) { _init_ws(); if (ws->finishSwap) ws->finishSwap(dpy, win); }