class Loader

Defined at line 954 of file fidling/gen/sdk/fidl/fuchsia.vulkan.loader/fuchsia.vulkan.loader/hlcpp/fuchsia/vulkan/loader/cpp/fidl.h

Provides Vulkan ICD (installable client driver) libraries.

Regular clients should access this protocol directly.

Trusted clients should access this protocol using the [`TrustedService`].

Public Members

static const char[] Name_

Public Methods

void ~Loader ()
void Get (::std::string name, GetCallback callback)

Requests a client driver library with the given name from the Vulkan loader

service. Returns a VMO suitable for loading as a dynamic library on

success, a null handle on failure.

void ConnectToManifestFs (::fuchsia::vulkan::loader::ConnectToManifestOptions options, ::zx::channel channel)

Connects to a FS serving fuchsia.io containing all Vulkan ICD manifests.

See

<https

://github.com/KhronosGroup/Vulkan-Loader/blob/master/loader/LoaderAndLayerInterface.md#icd-manifest-file-format>

for a description of the manifest file format. Manifests will always

appear in this directory after the relevant device appears in

`ConnectToDeviceFs()`.

void ConnectToDeviceFs (::zx::channel channel)

Connects to a FS serving fuchsia.io containing all device nodes

potentially relevant to ICDs. Trusted devices are exposed only to trusted

loader clients (see [`TrustedService`]).

void GetSupportedFeatures (GetSupportedFeaturesCallback callback)

Returns the set of features the loader service supports.

void GetVmexResource (GetVmexResourceCallback callback)

Returns a VmexResource that can be used by Lavapipe to JIT-compile code in the client

process, or an error.