blob: 5d809bd420e51ff2d6418673cb27c9198c573152 [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;
/// Type of the internal value in [`fuchsia.hardware.display/BufferCollectionId`].
alias BufferCollectionIdValue = uint64;
/// Identifies a sysmem BufferCollection owned by a Display Coordinator client.
///
/// Values are managed by [`fuchsia.hardware.display/Coordinator`] clients, to
/// facilitate feed-forward dataflow.
///
/// Each value uniquely identifies a [`fuchsia.sysmem/BufferCollection`] (as
/// well as its token [`fuchsia.sysmem/BufferCollectionToken`]) imported to the
/// Display Coordinator device within a Coordinator connection. The identifier
/// of a BufferCollection destroyed via
/// [`fuchsia.hardware.display/Coordinator.ReleaseBufferCollection`] can be
/// reused in a subsequent
/// [`fuchsia.hardware.display/Coordinator.ImportBufferCollection`] call.
type BufferCollectionId = struct {
value BufferCollectionIdValue;
};