flutter_flutter/ui/gl/egl_util.cc
James Robinson ff14e2c399 Remove users and delete //third_party/khronos headers
This stops using the GL/EGL/etc headers in //third_party/khronos on all
platforms and deletes them.  On Android, we use the EGL and OpenGL
headers from the Android NDK and define the enum values from the
following extensions if the platform does not provide them:

https://www.khronos.org/registry/egl/extensions/NV/EGL_NV_post_sub_buffer.txt
https://www.khronos.org/registry/egl/extensions/EXT/EGL_EXT_create_context_robustness.txt

On Linux we just need to know enough to talk to X in the theoretical
case that we want to swap OSMesa-produced pixels to an X window.

On Mac/iOS we're already using the headers from the relevant Frameworks.
2015-09-02 10:33:14 -07:00

50 lines
1.3 KiB
C++

// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ui/gl/egl_util.h"
#include <EGL/egl.h>
// This needs to be after the EGL includes
#include "ui/gl/gl_bindings.h"
namespace ui {
// Returns the last EGL error as a string.
const char* GetLastEGLErrorString() {
EGLint error = eglGetError();
switch (error) {
case EGL_SUCCESS:
return "EGL_SUCCESS";
case EGL_BAD_ACCESS:
return "EGL_BAD_ACCESS";
case EGL_BAD_ALLOC:
return "EGL_BAD_ALLOC";
case EGL_BAD_ATTRIBUTE:
return "EGL_BAD_ATTRIBUTE";
case EGL_BAD_CONTEXT:
return "EGL_BAD_CONTEXT";
case EGL_BAD_CONFIG:
return "EGL_BAD_CONFIG";
case EGL_BAD_CURRENT_SURFACE:
return "EGL_BAD_CURRENT_SURFACE";
case EGL_BAD_DISPLAY:
return "EGL_BAD_DISPLAY";
case EGL_BAD_SURFACE:
return "EGL_BAD_SURFACE";
case EGL_BAD_MATCH:
return "EGL_BAD_MATCH";
case EGL_BAD_PARAMETER:
return "EGL_BAD_PARAMETER";
case EGL_BAD_NATIVE_PIXMAP:
return "EGL_BAD_NATIVE_PIXMAP";
case EGL_BAD_NATIVE_WINDOW:
return "EGL_BAD_NATIVE_WINDOW";
default:
return "UNKNOWN";
}
}
} // namespace ui