Crate fidl_fuchsia_sysmem

Source

Structs§

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

Enums§

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

Constants§

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

Traits§

AllocatorProxyInterface
BufferCollectionProxyInterface
BufferCollectionTokenGroupProxyInterface
BufferCollectionTokenProxyInterface
NodeProxyInterface
SecureMemProxyInterface

Type Aliases§

NodeIsAlternateForResult
SecureMemAddSecureHeapPhysicalRangeResult
SecureMemDeleteSecureHeapPhysicalRangeResult
SecureMemGetPhysicalSecureHeapPropertiesResult
SecureMemGetPhysicalSecureHeapsResult
SecureMemModifySecureHeapPhysicalRangeResult
SecureMemZeroSubRangeResult