api.go 1.3 KB

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