fuchsia.vulkan.loader

添加:11

协议

Loader

fuchsia.vulkan.loader/loader.fidl 中定义

用于向加载器提供 Vulkan 库的服务。

ConnectToDeviceFs

连接到服务 fuchsia.io 的 FS,该 FS 包含可能与 ICD 相关的所有设备节点。/dev/ 将在此目录中的 下提供。

请求

名称类型
channel handle<channel>

ConnectToManifestFs

连接到提供所有 Vulkan ICD 清单的 fuchsia.io 的 FS。 有关清单文件格式的说明,请参阅 https://github.com/KhronosGroup/Vulkan-Loader/blob/master/loader/LoaderAndLayerInterface.md#icd-manifest-file-format。相关设备出现在 ConnectToDeviceFs() 中之后,清单将始终显示在此目录中。

请求

名称类型
options ConnectToManifestOptions
channel handle<channel>

获取

从 Vulkan 加载器服务请求具有给定名称的客户端驱动程序库。成功时返回适合作为动态库加载的 VMO,在失败时返回 null 句柄。

请求

名称类型
name string[64]

响应

名称类型
lib handle<vmo>?

GetSupportedFeatures

返回加载器服务支持的功能集。

请求

<EMPTY>

响应

名称类型
features Features

GetVmexResource

返回可供 Lavapipe 用于在客户端进程中 JIT 编译代码的 VmexResource,或者返回错误。

添加了:HEAD

请求

<EMPTY>

响应

名称类型
payload Loader_GetVmexResource_Result

结构

Loader_GetVmexResource_Response 资源

fuchsia.vulkan.loader/loader.fidl 中定义

字段类型说明默认
resource handle<resource> 无默认取景方式

枚举

GetVmexResourceError灵活

类型:uint32

fuchsia.vulkan.loader/loader.fidl 中定义

Loader.GetVmexResource 返回的错误类型。

添加了:HEAD

名称说明
1

结构化配置值 allow_lavapipe_icd 为 false。

2

加载器无法获取 VmexResource 句柄。

联合

Loader_GetVmexResource_Result 严格的 资源

fuchsia.vulkan.loader/loader.fidl 中定义

序数变体类型说明
response Loader_GetVmexResource_Response
err GetVmexResourceError

BITS

ConnectToManifestOptions 灵活

类型:uint32

fuchsia.vulkan.loader/loader.fidl 中定义

名称说明
1

等待加载器处理完当前 ICD 加载/卸载操作,然后再完成连接。

功能灵活

类型:uint32

fuchsia.vulkan.loader/loader.fidl 中定义

名称说明
1

实现 Get()。

2

实现 ConnectToDeviceFs()。

4

实现 ConnectToManifestFs()。