#ifndef UI_GL_GL_SURFACE_EGL_H_
#define UI_GL_GL_SURFACE_EGL_H_
#include "base/memory/raw_ptr.h"
#include "build/build_config.h"
#if BUILDFLAG(IS_WIN)
#include <windows.h>
#endif
#include <EGL/egl.h>
#include <EGL/eglext.h>
#include <memory>
#include <vector>
#include "base/command_line.h"
#include "base/containers/queue.h"
#include "base/time/time.h"
#include "ui/gfx/frame_data.h"
#include "ui/gfx/geometry/size.h"
#include "ui/gfx/vsync_provider.h"
#include "ui/gl/egl_timestamps.h"
#include "ui/gl/gl_display.h"
#include "ui/gl/gl_export.h"
#include "ui/gl/gl_surface.h"
#include "ui/gl/gl_surface_overlay.h"
#if BUILDFLAG(IS_ANDROID)
#include "ui/gl/android/scoped_a_native_window.h"
#endif
namespace gl {
class GLSurfacePresentationHelper;
class GL_EXPORT GLSurfaceEGL : public GLSurface { … };
class GL_EXPORT NativeViewGLSurfaceEGL : public GLSurfaceEGL,
public EGLTimestampClient { … };
class GL_EXPORT PbufferGLSurfaceEGL : public GLSurfaceEGL { … };
class GL_EXPORT SurfacelessEGL : public GLSurfaceEGL { … };
}
#endif