// Copyright 2023 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.starnix.gralloc;

@available(added=HEAD)
type VulkanModeSetterError = flexible enum : uint32 {
    INVALID_ARGS = 1;
};

@available(added=HEAD)
@discoverable
open protocol VulkanModeSetter {
    /// Inform gralloc of the vulkan mode. In normal operation this is called
    /// once per container lifetime.
    strict SetVulkanMode(table {
        1: vulkan_mode VulkanMode;
    }) -> () error VulkanModeSetterError;
};
