Crate fidl_fuchsia_sysmem Copy item path Source AllocatorAllocateNonSharedCollectionRequest AllocatorAllocateSharedCollectionRequest AllocatorBindSharedCollectionRequest AllocatorConnectToSysmem2AllocatorRequest AllocatorControlHandle AllocatorEventStream AllocatorMarker AllocatorProxy AllocatorRequestStream A Stream of incoming requests for fuchsia.sysmem/Allocator. AllocatorSetDebugClientInfoRequest AllocatorSynchronousProxy AllocatorValidateBufferCollectionTokenRequest AllocatorValidateBufferCollectionTokenResponder AllocatorValidateBufferCollectionTokenResponse BufferCollectionAttachLifetimeTrackingRequest BufferCollectionAttachTokenRequest BufferCollectionCheckBuffersAllocatedResponder BufferCollectionCheckBuffersAllocatedResponse BufferCollectionConstraints Constraints on BufferCollection parameters. These constraints can be
specified per-participant. The sysmem service implements aggregation of
constraints from multiple participants. BufferCollectionConstraintsAuxBuffers BufferCollectionControlHandle BufferCollectionEventStream BufferCollectionGetAuxBuffersResponder BufferCollectionGetAuxBuffersResponse BufferCollectionGetNodeRefResponder BufferCollectionInfo Deprecated. Use [‘fuchsia.sysmem2.BufferCollectionInfo’]. BufferCollectionInfo2 Information about a buffer collection and its buffers. BufferCollectionIsAlternateForResponder BufferCollectionMarker BufferCollectionProxy BufferCollectionRequestStream A Stream of incoming requests for fuchsia.sysmem/BufferCollection. BufferCollectionSetConstraintsAuxBuffersRequest BufferCollectionSetConstraintsRequest BufferCollectionSyncResponder BufferCollectionSynchronousProxy BufferCollectionTokenControlHandle BufferCollectionTokenCreateBufferCollectionTokenGroupRequest BufferCollectionTokenDuplicateRequest BufferCollectionTokenDuplicateSyncRequest BufferCollectionTokenDuplicateSyncResponder BufferCollectionTokenDuplicateSyncResponse BufferCollectionTokenEventStream BufferCollectionTokenGetNodeRefResponder BufferCollectionTokenGroupControlHandle BufferCollectionTokenGroupCreateChildRequest BufferCollectionTokenGroupCreateChildrenSyncRequest BufferCollectionTokenGroupCreateChildrenSyncResponder BufferCollectionTokenGroupCreateChildrenSyncResponse BufferCollectionTokenGroupEventStream BufferCollectionTokenGroupGetNodeRefResponder BufferCollectionTokenGroupIsAlternateForResponder BufferCollectionTokenGroupMarker BufferCollectionTokenGroupProxy BufferCollectionTokenGroupRequestStream A Stream of incoming requests for fuchsia.sysmem/BufferCollectionTokenGroup. BufferCollectionTokenGroupSyncResponder BufferCollectionTokenGroupSynchronousProxy BufferCollectionTokenIsAlternateForResponder BufferCollectionTokenMarker BufferCollectionTokenProxy BufferCollectionTokenRequestStream A Stream of incoming requests for fuchsia.sysmem/BufferCollectionToken. BufferCollectionTokenSyncResponder BufferCollectionTokenSynchronousProxy BufferCollectionWaitForBuffersAllocatedResponder BufferCollectionWaitForBuffersAllocatedResponse BufferFormat Describes how the contents of buffers are represented.
Buffers of each type are described by their own tables. BufferMemoryConstraints This type is deprecated for new code, but is still used by some camera code. BufferMemorySettings BufferUsage Describes how a client will access the contents of a buffer. ColorSpace Describes how the pixels within an image are meant to be presented.
Simple color spaces need only a type.
Parametric color spaces may require additional properties. FormatModifier This type is deprecated for new code, but is still used by some camera code. ImageFormat Describes how an image is represented. ImageFormat2 Describes how an image is represented. ImageFormatConstraints Describes constraints on layout of image data in buffers. ImagePlane This type is deprecated without a direct replacement (intentionally), as
fuchsia.images2 doesn’t require describing each plane separately. ImageSpec Describes constraints for allocating images of some desired form. NodeControlHandle NodeEventStream NodeGetNodeRefResponder NodeGetNodeRefResponse NodeIsAlternateForRequest NodeIsAlternateForResponder NodeIsAlternateForResponse NodeMarker NodeProxy NodeRequestStream A Stream of incoming requests for fuchsia.sysmem/Node. NodeSetDebugClientInfoRequest NodeSetDebugTimeoutLogDeadlineRequest NodeSetNameRequest NodeSyncResponder NodeSynchronousProxy PixelFormat Describes how the pixels within an image are represented.
Simple formats need only a type.
Parametric pixel formats may require additional properties. SecureHeapAndRange SecureHeapAndRangeModification SecureHeapAndRanges SecureHeapProperties SecureHeapRange SecureHeapsAndRanges SecureMemAddSecureHeapPhysicalRangeRequest SecureMemAddSecureHeapPhysicalRangeResponder SecureMemControlHandle SecureMemDeleteSecureHeapPhysicalRangeRequest SecureMemDeleteSecureHeapPhysicalRangeResponder SecureMemEventStream SecureMemGetPhysicalSecureHeapPropertiesRequest SecureMemGetPhysicalSecureHeapPropertiesResponder SecureMemGetPhysicalSecureHeapPropertiesResponse SecureMemGetPhysicalSecureHeapsResponder SecureMemGetPhysicalSecureHeapsResponse SecureMemMarker SecureMemModifySecureHeapPhysicalRangeRequest SecureMemModifySecureHeapPhysicalRangeResponder SecureMemProxy SecureMemRequestStream A Stream of incoming requests for fuchsia.sysmem/SecureMem. SecureMemSynchronousProxy SecureMemZeroSubRangeRequest SecureMemZeroSubRangeResponder SingleBufferInfo There is no current replacement for this type, but if your use case needs
incremental buffer allocation within a single collection, please reach out. SingleBufferSettings After the initial buffer allocation, it’s allowed to close old buffers and
allocate new buffers. When a new buffer is allocated its settings can
differ from the rest of the buffers in the collection, and the single
buffer’s settings are delivered via OnSingleBufferAllocated() using this
struct: VmoBuffer AllocatorEvent AllocatorRequest Allocates system memory buffers. BufferCollectionEvent BufferCollectionRequest BufferCollection is a connection directly from a participant to sysmem re.
a logical BufferCollection; typically the logical BufferCollection is shared
with other participants. In other words, an instance of the BufferCollection
interface is a view of a “logical buffer collection”. BufferCollectionTokenEvent BufferCollectionTokenGroupEvent BufferCollectionTokenGroupRequest The sysmem implementation is guaranteed to be consistent with a logical /
conceptual model as follows: BufferCollectionTokenRequest A BufferCollectionToken is not a BufferCollection, but rather a way to
identify a potential shared BufferCollection prior to the BufferCollection
being allocated. CoherencyDomain Inaccessible is only for cases where there is no CPU-based access to the
buffers. A secure_required buffer can still have CoherencyDomain Cpu or
Ram even if the secure_required buffer can only be accessed by the CPU when
the CPU is running in secure mode (or similar). In contrast, device-local
memory that isn’t reachable from the CPU is CoherencyDomain Inaccessible,
even if it’s possible to cause a device (physical or virtual) to copy the
data from the Inaccessible buffers to buffers that are visible to the CPU. ColorSpaceType This list has a separate entry for each variant of a color space standard. HeapType Known heap types.
Device specific types should have bit 60 set. Top order bit is reserved
and should not be set. NodeEvent NodeRequest PixelFormatType The ordering of the channels in the format name reflects how
the actual layout of the channel. SecureMemEvent SecureMemRequest SecureMem CPU_USAGE_READ CPU_USAGE_READ_OFTEN CPU_USAGE_WRITE CPU_USAGE_WRITE_OFTEN DISPLAY_USAGE_CURSOR DISPLAY_USAGE_LAYER FORMAT_MODIFIER_ARM_AFBC_16_X16 FORMAT_MODIFIER_ARM_AFBC_16_X16_SPLIT_BLOCK_SPARSE_YUV FORMAT_MODIFIER_ARM_AFBC_16_X16_SPLIT_BLOCK_SPARSE_YUV_TE FORMAT_MODIFIER_ARM_AFBC_16_X16_SPLIT_BLOCK_SPARSE_YUV_TE_TILED_HEADER FORMAT_MODIFIER_ARM_AFBC_16_X16_SPLIT_BLOCK_SPARSE_YUV_TILED_HEADER FORMAT_MODIFIER_ARM_AFBC_16_X16_TE FORMAT_MODIFIER_ARM_AFBC_16_X16_YUV_TILED_HEADER FORMAT_MODIFIER_ARM_AFBC_32_X8 FORMAT_MODIFIER_ARM_AFBC_32_X8_TE FORMAT_MODIFIER_ARM_BCH_BIT FORMAT_MODIFIER_ARM_LINEAR_TE FORMAT_MODIFIER_ARM_SPARSE_BIT FORMAT_MODIFIER_ARM_SPLIT_BLOCK_BIT FORMAT_MODIFIER_ARM_TE_BIT FORMAT_MODIFIER_ARM_TILED_HEADER_BIT FORMAT_MODIFIER_ARM_YUV_BIT FORMAT_MODIFIER_GOOGLE_GOLDFISH_OPTIMAL FORMAT_MODIFIER_INTEL_CCS_BIT FORMAT_MODIFIER_INTEL_I915_X_TILED FORMAT_MODIFIER_INTEL_I915_YF_TILED FORMAT_MODIFIER_INTEL_I915_YF_TILED_CCS FORMAT_MODIFIER_INTEL_I915_Y_TILED FORMAT_MODIFIER_INTEL_I915_Y_TILED_CCS FORMAT_MODIFIER_INVALID FORMAT_MODIFIER_LINEAR FORMAT_MODIFIER_NONE FORMAT_MODIFIER_VALUE_RESERVED FORMAT_MODIFIER_VENDOR_AMD FORMAT_MODIFIER_VENDOR_ARM FORMAT_MODIFIER_VENDOR_BROADCOM FORMAT_MODIFIER_VENDOR_GOOGLE This meaning of this value is deprecated. Use fuchsia.images2.FORMAT_MODIFIER_VENDOR_GOOGLE
instead which has a different value. FORMAT_MODIFIER_VENDOR_INTEL FORMAT_MODIFIER_VENDOR_NONE FORMAT_MODIFIER_VENDOR_NVIDIA FORMAT_MODIFIER_VENDOR_QCOM FORMAT_MODIFIER_VENDOR_SAMSUNG FORMAT_MODIFIER_VENDOR_VIVANTE MAX_COUNT_BUFFER_COLLECTION_CONSTRAINTS_IMAGE_FORMAT_CONSTRAINTS MAX_COUNT_BUFFER_COLLECTION_INFO_BUFFERS MAX_COUNT_BUFFER_MEMORY_CONSTRAINTS_HEAP_PERMITTED MAX_COUNT_CREATE_CHILDREN Actually creating this many children isn’t recommended in most typical
scenarios, but isn’t prevented, for testing reasons, and just in case an
unusual scenario needs it. Mitigation of potentially high time complexity
in sysmem will limit the actual number of group child combinations
considered in aggregation attempts to a separate maximum that is not
settable via these protocols. The maximum number of total nodes in a sysmem
token tree is limited to a separate maximum that is not settable via these
protocols. MAX_COUNT_DUPLICATES MAX_COUNT_IMAGE_FORMAT_CONSTRAINTS_COLOR_SPACES MAX_HEAPS_COUNT MAX_RANGES_COUNT NONE_USAGE VIDEO_USAGE_CAPTURE VIDEO_USAGE_DECRYPTOR_OUTPUT VIDEO_USAGE_HW_DECODER VIDEO_USAGE_HW_DECODER_INTERNAL VIDEO_USAGE_HW_ENCODER VIDEO_USAGE_HW_PROTECTED VULKAN_BUFFER_USAGE_INDEX_BUFFER VULKAN_BUFFER_USAGE_INDIRECT_BUFFER VULKAN_BUFFER_USAGE_STORAGE_BUFFER VULKAN_BUFFER_USAGE_STORAGE_TEXEL_BUFFER VULKAN_BUFFER_USAGE_TRANSFER_DST VULKAN_BUFFER_USAGE_TRANSFER_SRC VULKAN_BUFFER_USAGE_UNIFORM_BUFFER VULKAN_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER VULKAN_BUFFER_USAGE_VERTEX_BUFFER VULKAN_IMAGE_USAGE_COLOR_ATTACHMENT VULKAN_IMAGE_USAGE_INPUT_ATTACHMENT VULKAN_IMAGE_USAGE_SAMPLED VULKAN_IMAGE_USAGE_STENCIL_ATTACHMENT VULKAN_IMAGE_USAGE_STORAGE VULKAN_IMAGE_USAGE_TRANSFER_DST VULKAN_IMAGE_USAGE_TRANSFER_SRC VULKAN_IMAGE_USAGE_TRANSIENT_ATTACHMENT VULKAN_USAGE_COLOR_ATTACHMENT VULKAN_USAGE_INPUT_ATTACHMENT VULKAN_USAGE_SAMPLED VULKAN_USAGE_STENCIL_ATTACHMENT VULKAN_USAGE_STORAGE VULKAN_USAGE_TRANSFER_DST VULKAN_USAGE_TRANSFER_SRC VULKAN_USAGE_TRANSIENT_ATTACHMENT AllocatorProxyInterface BufferCollectionProxyInterface BufferCollectionTokenGroupProxyInterface BufferCollectionTokenProxyInterface NodeProxyInterface SecureMemProxyInterface NodeIsAlternateForResult SecureMemAddSecureHeapPhysicalRangeResult SecureMemDeleteSecureHeapPhysicalRangeResult SecureMemGetPhysicalSecureHeapPropertiesResult SecureMemGetPhysicalSecureHeapsResult SecureMemModifySecureHeapPhysicalRangeResult SecureMemZeroSubRangeResult