The type corresponding to the BufferCollection protocol.
[fuchsia.sysmem2/BufferCollection] is a connection directly from a
participant to sysmem re. a buffer collection; often the buffer collection
is shared with other participants which have their own BufferCollection
client end(s) associated with the same buffer collection. In other words,
an instance of the BufferCollection interface is a view of a buffer
collection, not the buffer collection itself.
Constraints on allocated buffers and, optionally, constraints on images
stored in the buffers. These constraints can be specified per-participant.
The sysmem service implements aggregation of constraints from multiple
participants.
The type corresponding to the BufferCollectionToken protocol.
A [fuchsia.sysmem2/BufferCollectionToken] is not a buffer collection, but
rather is a way to identify a specific potential shared buffer collection,
and a way to distribute that potential shared buffer collection to
additional participants prior to the buffer collection allocating any
buffers.
The type corresponding to the BufferCollectionTokenGroup protocol.
The sysmem implementation is consistent with a logical / conceptual model of
allocation / logical allocation as follows:
This type is fidl::Persist()’ed in the sysmem_config.persistent_fidl file
within the sysmem domain config by the assembly tool, and read by the sysmem
driver.
Entries which have the same pixel_format, pixel_format_modifier, and
required_usage_bits as a previous entry will override that previous entry.
For matching purposes, an absent pixel_format_modifier matches LINEAR, and
an absent required_buffer_usage_bits matches all-0 usage bits.
This is the root of the persistent fidl in a format costs file. The format
costs files are read by the assembly tool and merged into the single
sysmem_config.persistent_fidl file in the sysmem domain config (see Config
above).
The type corresponding to the Node protocol.
This protocol is the parent protocol for all nodes in the tree established
by [fuchsia.sysmem2/BufferCollectionToken] creation and
[fuchsia.sysmem2/BufferCollectionTokenGroup] creation, including
fuchsia.sysmem2/BufferCollectionToken which have since been converted
to a [fuchsia.sysmem2/BufferCollection] channel.