gioui.org@v0.6.1-0.20240506124620-7a9ce51988ce/gpu/api.go (about) 1 // SPDX-License-Identifier: Unlicense OR MIT 2 3 package gpu 4 5 import "gioui.org/gpu/internal/driver" 6 7 // An API carries the necessary GPU API specific resources to create a Device. 8 // There is an API type for each supported GPU API such as OpenGL and Direct3D. 9 type API = driver.API 10 11 // A RenderTarget denotes the destination framebuffer for a frame. 12 type RenderTarget = driver.RenderTarget 13 14 // OpenGLRenderTarget is a render target suitable for the OpenGL backend. 15 type OpenGLRenderTarget = driver.OpenGLRenderTarget 16 17 // Direct3D11RenderTarget is a render target suitable for the Direct3D 11 backend. 18 type Direct3D11RenderTarget = driver.Direct3D11RenderTarget 19 20 // MetalRenderTarget is a render target suitable for the Metal backend. 21 type MetalRenderTarget = driver.MetalRenderTarget 22 23 // VulkanRenderTarget is a render target suitable for the Vulkan backend. 24 type VulkanRenderTarget = driver.VulkanRenderTarget 25 26 // OpenGL denotes the OpenGL or OpenGL ES API. 27 type OpenGL = driver.OpenGL 28 29 // Direct3D11 denotes the Direct3D API. 30 type Direct3D11 = driver.Direct3D11 31 32 // Metal denotes the Apple Metal API. 33 type Metal = driver.Metal 34 35 // Vulkan denotes the Vulkan API. 36 type Vulkan = driver.Vulkan 37 38 // ErrDeviceLost is returned from GPU operations when the underlying GPU device 39 // is lost and should be recreated. 40 var ErrDeviceLost = driver.ErrDeviceLost