通訊協定
載入器
定義於 fuchsia.vulkan.loader/loader.fidl
提供 Vulkan 程式庫給載入器的服務。
ConnectToDeviceFs
會連線至提供 fuchsia.io 的 FS,其中包含可能與 ICD 相關的所有裝置節點。/dev/
要求
名稱 | 類型 |
---|---|
channel |
handle<channel>
|
ConnectToManifestFs
這個外掛程式能連線至內含所有 Vulkan ICD 資訊清單的 FS 服務 fuchsia.io。
如需資訊清單檔案格式的說明,請參閱 https://github.com/KhronosGroup/Vulkan-Loader/blob/master/loader/LoaderAndLayerInterface.md#icd-manifest-file-format。在 ConnectToDeviceFs()
中顯示相關裝置後,資訊清單一律會顯示在這個目錄中。
要求
名稱 | 類型 |
---|---|
options |
ConnectToManifestOptions
|
channel |
handle<channel>
|
安裝
向 Vulkan 載入器服務要求使用指定名稱的用戶端程式庫。傳回適合載入為動態程式庫的 VMO,失敗時會傳回空值控制代碼。
要求
名稱 | 類型 |
---|---|
name |
string[64]
|
回應
名稱 | 類型 |
---|---|
lib |
handle<vmo>?
|
GetSupportedFeatures
傳回載入器服務支援的功能組合。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
features |
Features
|
GetVmexResource
傳回可供 Lavapipe 用於用戶端程序中 JIT 編譯程式碼的 VmexResource,否則發生錯誤。
要求
<EMPTY>
回應
名稱 | 類型 |
---|---|
payload |
Loader_GetVmexResource_Result
|
結構化
Loader_GetVmexResource_Response 資源
定義於 fuchsia.vulkan.loader/loader.fidl
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
resource |
handle<resource>
|
無預設 |
ENUMS
GetVmexResourceError 彈性
類型:uint32
定義於 fuchsia.vulkan.loader/loader.fidl
Loader.GetVmexResource 傳回的錯誤類型。
名稱 | 值 | 說明 |
---|---|---|
LAVAPIPE_ICD_NOT_ALLOWED |
1 |
結構化設定值 |
FAILED_TO_OBTAIN_RESOURCE |
2 |
載入器無法取得 |
聯合國
Loader_GetVmexResource_Result 嚴格 資源
定義於 fuchsia.vulkan.loader/loader.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Loader_GetVmexResource_Response
|
|
2 |
err |
GetVmexResourceError
|
帳單
ConnectToManifestOptions 彈性
類型:uint32
定義於 fuchsia.vulkan.loader/loader.fidl
名稱 | 值 | 說明 |
---|---|---|
WAIT_FOR_IDLE |
1 | 請等待載入器完成目前的 ICD 載入/卸載作業後,再完成連線。 |
功能靈活彈性
類型:uint32
定義於 fuchsia.vulkan.loader/loader.fidl
名稱 | 值 | 說明 |
---|---|---|
GET |
1 | 實作 Get()。 |
CONNECT_TO_DEVICE_FS |
2 | 實作 ConnectToDeviceFs()。 |
CONNECT_TO_MANIFEST_FS |
4 | 實作 ConnectToManifestFs()。 |