vulkan-3.24.5: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Core10.Enums.BufferUsageFlagBits

Synopsis

Documentation

newtype BufferUsageFlagBits Source #

VkBufferUsageFlagBits - Bitmask specifying allowed usage of a buffer

See Also

VK_VERSION_1_0, BufferUsageFlags

Bundled Patterns

pattern BUFFER_USAGE_TRANSFER_SRC_BIT :: BufferUsageFlagBits

BUFFER_USAGE_TRANSFER_SRC_BIT specifies that the buffer can be used as the source of a transfer command (see the definition of https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#synchronization-pipeline-stages-transfer).

pattern BUFFER_USAGE_TRANSFER_DST_BIT :: BufferUsageFlagBits

BUFFER_USAGE_TRANSFER_DST_BIT specifies that the buffer can be used as the destination of a transfer command.

pattern BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT specifies that the buffer can be used to create a BufferView suitable for occupying a DescriptorSet slot of type DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER.

pattern BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT specifies that the buffer can be used to create a BufferView suitable for occupying a DescriptorSet slot of type DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER.

pattern BUFFER_USAGE_UNIFORM_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_UNIFORM_BUFFER_BIT specifies that the buffer can be used in a DescriptorBufferInfo suitable for occupying a DescriptorSet slot either of type DESCRIPTOR_TYPE_UNIFORM_BUFFER or DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.

pattern BUFFER_USAGE_STORAGE_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_STORAGE_BUFFER_BIT specifies that the buffer can be used in a DescriptorBufferInfo suitable for occupying a DescriptorSet slot either of type DESCRIPTOR_TYPE_STORAGE_BUFFER or DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.

pattern BUFFER_USAGE_INDEX_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_INDEX_BUFFER_BIT specifies that the buffer is suitable for passing as the buffer parameter to cmdBindIndexBuffer.

pattern BUFFER_USAGE_VERTEX_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_VERTEX_BUFFER_BIT specifies that the buffer is suitable for passing as an element of the pBuffers array to cmdBindVertexBuffers.

pattern BUFFER_USAGE_INDIRECT_BUFFER_BIT :: BufferUsageFlagBits

BUFFER_USAGE_INDIRECT_BUFFER_BIT specifies that the buffer is suitable for passing as the buffer parameter to cmdDrawIndirect, cmdDrawIndexedIndirect, cmdDrawMeshTasksIndirectNV, cmdDrawMeshTasksIndirectCountNV, cmdDrawMeshTasksIndirectEXT, cmdDrawMeshTasksIndirectCountEXT, cmdDrawClusterIndirectHUAWEI, or cmdDispatchIndirect. It is also suitable for passing as the buffer member of IndirectCommandsStreamNV, or sequencesCountBuffer or sequencesIndexBuffer or preprocessedBuffer member of GeneratedCommandsInfoNV

pattern BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT :: BufferUsageFlagBits 
pattern BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT :: BufferUsageFlagBits 
pattern BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT specifies that the buffer, when bound, can be used by the implementation to support push descriptors when using descriptor buffers.

pattern BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT specifies that the buffer is suitable to contain resource descriptors when bound as a descriptor buffer.

pattern BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT specifies that the buffer is suitable to contain sampler and combined image sampler descriptors when bound as a descriptor buffer. Buffers containing combined image sampler descriptors must also specify BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT.

pattern BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR :: BufferUsageFlagBits

BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR specifies that the buffer is suitable for use as a Shader Binding Table.

pattern BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR :: BufferUsageFlagBits

BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR specifies that the buffer is suitable for storage space for a AccelerationStructureKHR.

pattern BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR :: BufferUsageFlagBits

BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR specifies that the buffer is suitable for use as a read-only input to an acceleration structure build.

pattern BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT specifies that the buffer is suitable for passing as the buffer parameter to cmdBeginConditionalRenderingEXT.

pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT specifies that the buffer is suitable for using as a counter buffer with cmdBeginTransformFeedbackEXT and cmdEndTransformFeedbackEXT.

pattern BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: BufferUsageFlagBits

BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT specifies that the buffer is suitable for using for binding as a transform feedback buffer with cmdBindTransformFeedbackBuffersEXT.

pattern BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT :: BufferUsageFlagBits

BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT specifies that the buffer can be used to retrieve a buffer device address via getBufferDeviceAddress and use that address to access the buffer’s memory from a shader.

Instances

Instances details
Storable BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Bits BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

FiniteBits BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Read BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Show BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Eq BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Ord BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits

Zero BufferUsageFlagBits Source # 
Instance details

Defined in Vulkan.Core10.Enums.BufferUsageFlagBits