| // Copyright 2022 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module gpu.mojom; |
| |
| // Corresponds to C++ type gpu::GpuDiskCacheType |
| enum GpuDiskCacheType { |
| kGlShaders, |
| kDawnWebGPU, |
| kDawnGraphite, |
| }; |
| |
| // |
| // Typed handles |
| // |
| |
| // Corresponds to C++ type gpu::GpuDiskCacheGlShaderHandle |
| struct GpuDiskCacheGlShaderHandle { |
| int32 value; |
| }; |
| |
| // Corresponds to C++ type gpu::GpuDiskCacheDawnWebGPUHandle |
| struct GpuDiskCacheDawnWebGPUHandle { |
| int32 value; |
| }; |
| |
| // Corresponds to C++ type gpu::GpuDiskCacheDawnGraphiteHandle |
| struct GpuDiskCacheDawnGraphiteHandle { |
| int32 value; |
| }; |
| |
| // |
| // Union handle |
| // |
| |
| // Corresponds to C++ type gpu::GpuDiskCacheHandle |
| union GpuDiskCacheHandle { |
| GpuDiskCacheGlShaderHandle gl_shader_handle; |
| GpuDiskCacheDawnWebGPUHandle dawn_webgpu_handle; |
| GpuDiskCacheDawnGraphiteHandle dawn_graphite_handle; |
| }; |