blob: dd6f44a2da50915519fb3f01673f05ff8192e867 [file] [log] [blame]
// 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.hardware.display.types;
/// Type of the internal value in [`fuchsia.hardware.display.types/DisplayId`].
alias DisplayIdValue = uint64;
/// Unique identifier for a display device attached to the system.
///
/// [`fuchsia.hardware.display.types/INVALID_DISP_ID`] represents an invalid
/// value.
///
/// Values are unique within a [`fuchsia.hardware.display/Controller`]
/// connection. An external display will be associated with different display ID
/// values if it is disconnected and reconnected.
///
/// A display device may be identified by different values across boot cycles or
/// across different Controller connections. Software that needs to identify
/// displays (for example, to honor display-specific preferences) should use
/// [`fuchsia.hardware.display/Info`] identifiers, not display IDs.
///
/// This type is not related to the VESA DisplayID standard.
type DisplayId = struct {
value DisplayIdValue;
};
// TODO(https://fxbug.dev/42079383): Use separate invalid ID constants for each ID type.
/// Invalid id for displays, images, and events.
const INVALID_DISP_ID DisplayIdValue = 0;