| // Copyright 2016 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. |
| |
| module gfx.mojom; |
| |
| import "mojom/native_handle_types.mojom"; |
| |
| // gfx::BufferFormat |
| enum BufferFormat { |
| R_8, |
| R_16, |
| RG_88, |
| BGR_565, |
| RGBA_4444, |
| RGBX_8888, |
| RGBA_8888, |
| BGRX_8888, |
| BGRA_1010102, |
| RGBA_1010102, |
| BGRA_8888, |
| RGBA_F16, |
| YVU_420, |
| YUV_420_BIPLANAR, |
| P010, |
| }; |
| |
| // gfx::BufferUsage |
| enum BufferUsage { |
| GPU_READ, |
| SCANOUT, |
| SCANOUT_CAMERA_READ_WRITE, |
| CAMERA_AND_CPU_READ_WRITE, |
| SCANOUT_CPU_READ_WRITE, |
| SCANOUT_VDA_WRITE, |
| GPU_READ_CPU_READ_WRITE, |
| SCANOUT_VEA_READ_CAMERA_AND_CPU_READ_WRITE, |
| }; |
| |
| struct BufferUsageAndFormat { |
| BufferUsage usage; |
| BufferFormat format; |
| }; |
| |
| // gfx::GpuMemoryBufferId |
| struct GpuMemoryBufferId { |
| int32 id; |
| }; |
| |
| // gfx::GpuMemoryBufferHandle |
| struct GpuMemoryBufferHandle { |
| GpuMemoryBufferId id; |
| uint32 offset; |
| uint32 stride; |
| GpuMemoryBufferPlatformHandle? platform_handle; |
| }; |