// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module gl.mojom;
// Maps to its namesake in ui/gl/gl_implementation.h.
enum GLImplementation {
kGLImplementationNone,
kGLImplementationEGLGLES2,
kGLImplementationMockGL,
kGLImplementationStubGL,
kGLImplementationDisabled,
kGLImplementationEGLANGLE,
};
// Maps to its namesake in ui/gl/gl_implementation.h.
enum ANGLEImplementation {
kNone,
kD3D9,
kD3D11,
kOpenGL,
kOpenGLES,
kNull,
kVulkan,
kSwiftShader,
kMetal,
kD3D11Warp,
kDefault,
};
// Maps to its namesake in ui/gl/gl_implementation.h.
struct GLImplementationParts {
// The GL implementation currently in use.
GLImplementation gl;
// The ANGLE implementation currently in use.
ANGLEImplementation angle;
};