blob: 6e5085fadbda9144e9ab9cbca5f1a5bd5aaa4e5a [file] [edit]
// Copyright 2026 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.hardware.display;
/// Decides which Display Coordinator client owns the displays.
///
/// The Display Coordinator has at most one connected client at each priority
/// level. The client with the highest priority level owns the displays. Higher
/// numerical values represent higher priorities.
///
/// [`fuchsia.hardware.display/INVALID_CLIENT_PRIORITY_VALUE`] is reserved as a
/// null value placeholder. Clients may not ask for this priority level when
/// connecting to the Coordinator.
type ClientPriority = struct {
value ClientPriorityValue;
};
/// See [`fuchsia.hardware.display/ClientPriority`].
alias ClientPriorityValue = uint32;
const INVALID_CLIENT_PRIORITY_VALUE ClientPriorityValue = 0;
/// Statically assigned priority level for the virtual console.
const VIRTCON_CLIENT_PRIORITY_VALUE ClientPriorityValue = 100;
/// Statically assigned priority level for the system compositor.
///
/// The currently supported system compositors are
/// * Scenic for most cases
/// * Carnelian for the recovery image
const COMPOSITOR_CLIENT_PRIORITY_VALUE ClientPriorityValue = 200;
/// Statically assigned priority level for test utilities.
const TEST_UTILITY_CLIENT_PRIORITY_VALUE ClientPriorityValue = 300;