// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.vulkan.loader;

using zx;

/// Service to provide Vulkan libraries to the loader.
[Discoverable, ForDeprecatedCBindings]
protocol Loader {
    /// 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.
    Get(string:64 name) -> (zx.handle:VMO? lib);
};
