VkBufferCollectionPropertiesFUCHSIA(3)

# VkBufferCollectionPropertiesFUCHSIA(3) Manual Page

## Name

VkBufferCollectionPropertiesFUCHSIA - Structure specifying the negotiated format chosen by Sysmem

Loading… please wait.

## C Specification

The `VkBufferCollectionPropertiesFUCHSIA` structure is defined as:

    // Provided by VK_FUCHSIA_buffer_collection
    typedef struct VkBufferCollectionPropertiesFUCHSIA {
        VkStructureType                  sType;
        void*                            pNext;
        uint32_t                         memoryTypeBits;
        uint32_t                         bufferCount;
        uint32_t                         createInfoIndex;
        uint64_t                         sysmemPixelFormat;
        VkFormatFeatureFlags             formatFeatures;
        VkSysmemColorSpaceFUCHSIA        sysmemColorSpaceIndex;
        VkComponentMapping               samplerYcbcrConversionComponents;
        VkSamplerYcbcrModelConversion    suggestedYcbcrModel;
        VkSamplerYcbcrRange              suggestedYcbcrRange;
        VkChromaLocation                 suggestedXChromaOffset;
        VkChromaLocation                 suggestedYChromaOffset;
    } VkBufferCollectionPropertiesFUCHSIA;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure

- `memoryTypeBits` is a bitmask containing one bit set for every memory type which the buffer collection can be imported as buffer collection

- `bufferCount` is the number of buffers in the collection

- `createInfoIndex` as described in Sysmem chosen create infos

- `sysmemPixelFormat` is the Sysmem `PixelFormatType` as defined in `fuchsia.sysmem/image_formats.fidl`

- `formatFeatures` is a bitmask of VkFormatFeatureFlagBits shared by the buffer collection

- `sysmemColorSpaceIndex` is a VkSysmemColorSpaceFUCHSIA struct specifying the color space

- `samplerYcbcrConversionComponents` is a VkComponentMapping struct specifying the component mapping

- `suggestedYcbcrModel` is a VkSamplerYcbcrModelConversion value specifying the suggested Y′CBCR model

- `suggestedYcbcrRange` is a VkSamplerYcbcrRange value specifying the suggested Y′CBCR range

- `suggestedXChromaOffset` is a VkChromaLocation value specifying the suggested X chroma offset

- `suggestedYChromaOffset` is a VkChromaLocation value specifying the suggested Y chroma offset

## Description

`sysmemColorSpace` is only set for image-based buffer collections where the constraints were specified using VkImageConstraintsInfoFUCHSIA in a call to vkSetBufferCollectionImageConstraintsFUCHSIA.

For image-based buffer collections, `createInfoIndex` will identify both the VkImageConstraintsInfoFUCHSIA::`pImageCreateInfos` element and the VkImageConstraintsInfoFUCHSIA::`pFormatConstraints` element chosen by Sysmem when vkSetBufferCollectionImageConstraintsFUCHSIA was called. The value of `sysmemColorSpaceIndex` will be an index to one of the color spaces provided in the VkImageFormatConstraintsInfoFUCHSIA::`pColorSpaces` array.

The implementation must have `formatFeatures` with all bits set that were set in VkImageFormatConstraintsInfoFUCHSIA::`requiredFormatFeatures`, by the call to vkSetBufferCollectionImageConstraintsFUCHSIA, at `createInfoIndex` (other bits could be set as well).

Valid Usage (Implicit)

- VUID-VkBufferCollectionPropertiesFUCHSIA-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA`

- VUID-VkBufferCollectionPropertiesFUCHSIA-pNext-pNext
  `pNext` must be `NULL`

- VUID-VkBufferCollectionPropertiesFUCHSIA-formatFeatures-parameter
  `formatFeatures` must be a valid combination of VkFormatFeatureFlagBits values

- VUID-VkBufferCollectionPropertiesFUCHSIA-formatFeatures-requiredbitmask
  `formatFeatures` must not be `0`

- VUID-VkBufferCollectionPropertiesFUCHSIA-sysmemColorSpaceIndex-parameter
  `sysmemColorSpaceIndex` must be a valid VkSysmemColorSpaceFUCHSIA structure

- VUID-VkBufferCollectionPropertiesFUCHSIA-samplerYcbcrConversionComponents-parameter
  `samplerYcbcrConversionComponents` must be a valid VkComponentMapping structure

- VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYcbcrModel-parameter
  `suggestedYcbcrModel` must be a valid VkSamplerYcbcrModelConversion value

- VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYcbcrRange-parameter
  `suggestedYcbcrRange` must be a valid VkSamplerYcbcrRange value

- VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedXChromaOffset-parameter
  `suggestedXChromaOffset` must be a valid VkChromaLocation value

- VUID-VkBufferCollectionPropertiesFUCHSIA-suggestedYChromaOffset-parameter
  `suggestedYChromaOffset` must be a valid VkChromaLocation value

## See Also

VK_FUCHSIA_buffer_collection, VkChromaLocation, VkComponentMapping, VkFormatFeatureFlags, VkSamplerYcbcrModelConversion, VkSamplerYcbcrRange, VkStructureType, VkSysmemColorSpaceFUCHSIA, vkGetBufferCollectionPropertiesFUCHSIA

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2023 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0