vulkan-3.5: Bindings to the Vulkan graphics API.
Safe HaskellNone
LanguageHaskell2010

Vulkan.Extensions.VK_EXT_buffer_device_address

Synopsis

Documentation

data PhysicalDeviceBufferDeviceAddressFeaturesEXT Source #

VkPhysicalDeviceBufferDeviceAddressFeaturesEXT - Structure describing buffer address features that can be supported by an implementation

Members

The members of the PhysicalDeviceBufferDeviceAddressFeaturesEXT structure describe the following features:

Description

If the PhysicalDeviceBufferDeviceAddressFeaturesEXT structure is included in the pNext chain of PhysicalDeviceFeatures2, it is filled with values indicating whether the feature is supported. PhysicalDeviceBufferDeviceAddressFeaturesEXT can also be included in the pNext chain of DeviceCreateInfo to enable features.

Note

The PhysicalDeviceBufferDeviceAddressFeaturesEXT structure has the same members as the PhysicalDeviceBufferDeviceAddressFeatures structure, but the functionality indicated by the members is expressed differently. The features indicated by the PhysicalDeviceBufferDeviceAddressFeatures structure requires additional flags to be passed at memory allocation time, and the capture and replay mechanism is built around opaque capture addresses for buffer and memory objects.

Valid Usage (Implicit)

See Also

Bool32, StructureType

Constructors

PhysicalDeviceBufferDeviceAddressFeaturesEXT 

Fields

  • bufferDeviceAddress :: Bool

    bufferDeviceAddress indicates that the implementation supports accessing buffer memory in shaders as storage buffers via an address queried from getBufferDeviceAddressEXT.

  • bufferDeviceAddressCaptureReplay :: Bool

    bufferDeviceAddressCaptureReplay indicates that the implementation supports saving and reusing buffer addresses, e.g. for trace capture and replay.

  • bufferDeviceAddressMultiDevice :: Bool

    bufferDeviceAddressMultiDevice indicates that the implementation supports the bufferDeviceAddress feature for logical devices created with multiple physical devices. If this feature is not supported, buffer addresses must not be queried on a logical device created with more than one physical device.

Instances

Instances details
Eq PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Show PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Generic PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Storable PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

FromCStruct PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

ToCStruct PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Zero PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

type Rep PhysicalDeviceBufferDeviceAddressFeaturesEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

type Rep PhysicalDeviceBufferDeviceAddressFeaturesEXT = D1 ('MetaData "PhysicalDeviceBufferDeviceAddressFeaturesEXT" "Vulkan.Extensions.VK_EXT_buffer_device_address" "vulkan-3.5-inplace" 'False) (C1 ('MetaCons "PhysicalDeviceBufferDeviceAddressFeaturesEXT" 'PrefixI 'True) (S1 ('MetaSel ('Just "bufferDeviceAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "bufferDeviceAddressCaptureReplay") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool) :*: S1 ('MetaSel ('Just "bufferDeviceAddressMultiDevice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool))))

data BufferDeviceAddressCreateInfoEXT Source #

VkBufferDeviceAddressCreateInfoEXT - Request a specific address for a buffer

Description

If deviceAddress is zero, no specific address is requested.

If deviceAddress is not zero, then it must be an address retrieved from an identically created buffer on the same implementation. The buffer must also be bound to an identically created DeviceMemory object.

If this structure is not present, it is as if deviceAddress is zero.

Apps should avoid creating buffers with app-provided addresses and implementation-provided addresses in the same process, to reduce the likelihood of ERROR_INVALID_DEVICE_ADDRESS_EXT errors.

Valid Usage (Implicit)

See Also

DeviceAddress, StructureType

Constructors

BufferDeviceAddressCreateInfoEXT 

Fields

Instances

Instances details
Eq BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Show BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Generic BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Associated Types

type Rep BufferDeviceAddressCreateInfoEXT :: Type -> Type #

Storable BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

FromCStruct BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

ToCStruct BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

Zero BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

type Rep BufferDeviceAddressCreateInfoEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_buffer_device_address

type Rep BufferDeviceAddressCreateInfoEXT = D1 ('MetaData "BufferDeviceAddressCreateInfoEXT" "Vulkan.Extensions.VK_EXT_buffer_device_address" "vulkan-3.5-inplace" 'False) (C1 ('MetaCons "BufferDeviceAddressCreateInfoEXT" 'PrefixI 'True) (S1 ('MetaSel ('Just "deviceAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 DeviceAddress)))

type EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME = "VK_EXT_buffer_device_address" Source #