const char *EGLAPIENTRY QueryString(EGLDisplay dpy, EGLint name) { EVENT("(EGLDisplay dpy = 0x%0.8p, EGLint name = %d)", dpy, name); Thread *thread = GetCurrentThread(); Display *display = static_cast<Display *>(dpy); if (!(display == EGL_NO_DISPLAY && name == EGL_EXTENSIONS)) { Error error = ValidateDisplay(display); if (error.isError()) { thread->setError(error); return nullptr; } } const char *result; switch (name) { case EGL_CLIENT_APIS: result = "OpenGL_ES"; break; case EGL_EXTENSIONS: if (display == EGL_NO_DISPLAY) { result = Display::GetClientExtensionString().c_str(); } else { result = display->getExtensionString().c_str(); } break; case EGL_VENDOR: result = display->getVendorString().c_str(); break; case EGL_VERSION: result = "1.4 (ANGLE " ANGLE_VERSION_STRING ")"; break; default: thread->setError(EglBadParameter()); return nullptr; } thread->setError(NoError()); return result; }
const char *EGLAPIENTRY QueryString(EGLDisplay dpy, EGLint name) { EVENT("(EGLDisplay dpy = 0x%0.8p, EGLint name = %d)", dpy, name); Display *display = static_cast<Display*>(dpy); if (!(display == EGL_NO_DISPLAY && name == EGL_EXTENSIONS)) { Error error = ValidateDisplay(display); if (error.isError()) { SetGlobalError(error); return NULL; } } const char *result; switch (name) { case EGL_CLIENT_APIS: result = "OpenGL_ES"; break; case EGL_EXTENSIONS: if (display == EGL_NO_DISPLAY) { result = Display::getClientExtensionString().c_str(); } else { result = display->getExtensionString().c_str(); } break; case EGL_VENDOR: result = display->getVendorString().c_str(); break; case EGL_VERSION: result = "1.4 (ANGLE " ANGLE_VERSION_STRING ")"; break; default: SetGlobalError(Error(EGL_BAD_PARAMETER)); return NULL; } SetGlobalError(Error(EGL_SUCCESS)); return result; }