## C Specification

The VkBufferCollectionConstraintsInfoFUCHSIA structure is defined as:

// Provided by VK_FUCHSIA_buffer_collection
typedef struct VkBufferCollectionConstraintsInfoFUCHSIA {
VkStructureType    sType;
const void*        pNext;
uint32_t           minBufferCount;
uint32_t           maxBufferCount;
uint32_t           minBufferCountForCamping;
uint32_t           minBufferCountForDedicatedSlack;
uint32_t           minBufferCountForSharedSlack;
} VkBufferCollectionConstraintsInfoFUCHSIA;

## Members

• sType is the type of this structure

• pNext is NULL or a pointer to a structure extending this structure

• minBufferCount is the minimum number of buffers available in the collection

• maxBufferCount is the maximum number of buffers allowed in the collection

• minBufferCountForCamping is the per-participant minimum buffers for camping

• minBufferCountForDedicatedSlack is the per-participant minimum buffers for dedicated slack

• minBufferCountForSharedSlack is the per-participant minimum buffers for shared slack

## Description

Sysmem uses all buffer count parameters in combination to determine the number of buffers it will allocate. Sysmem defines buffer count constraints in fuchsia.sysmem/constraints.fidl.

Camping as referred to by minBufferCountForCamping, is the number of buffers that should be available for the participant that are not for transient use. This number of buffers is required for the participant to logically operate.

Slack as referred to by minBufferCountForDedicatedSlack and minBufferCountForSharedSlack, refers to the number of buffers desired by participants for optimal performance. minBufferCountForDedicatedSlack refers to the current participant. minBufferCountForSharedSlack refers to buffer slack for all participants in the collection.

Valid Usage (Implicit)
• VUID-VkBufferCollectionConstraintsInfoFUCHSIA-sType-sType
sType must be VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA

• VUID-VkBufferCollectionConstraintsInfoFUCHSIA-pNext-pNext
pNext must be NULL

## Document Notes

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

Copyright 2014-2022 The Khronos Group Inc.