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

Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Synopsis

Documentation

newtype PeerMemoryFeatureFlagBits Source #

VkPeerMemoryFeatureFlagBits - Bitmask specifying supported peer memory features

Description

Note

The peer memory features of a memory heap also apply to any accesses that may be performed during image layout transitions.

PEER_MEMORY_FEATURE_COPY_DST_BIT must be supported for all host local heaps and for at least one device local heap.

If a device does not support a peer memory feature, it is still valid to use a resource that includes both local and peer memory bindings with the corresponding access type as long as only the local bindings are actually accessed. For example, an application doing split-frame rendering would use framebuffer attachments that include both local and peer memory bindings, but would scissor the rendering to only update local memory.

See Also

PeerMemoryFeatureFlags

Bundled Patterns

pattern PEER_MEMORY_FEATURE_COPY_SRC_BIT :: PeerMemoryFeatureFlagBits

PEER_MEMORY_FEATURE_COPY_SRC_BIT specifies that the memory can be accessed as the source of a cmdCopyBuffer, cmdCopyImage, cmdCopyBufferToImage, or cmdCopyImageToBuffer command.

pattern PEER_MEMORY_FEATURE_COPY_DST_BIT :: PeerMemoryFeatureFlagBits

PEER_MEMORY_FEATURE_COPY_DST_BIT specifies that the memory can be accessed as the destination of a cmdCopyBuffer, cmdCopyImage, cmdCopyBufferToImage, or cmdCopyImageToBuffer command.

pattern PEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: PeerMemoryFeatureFlagBits

PEER_MEMORY_FEATURE_GENERIC_SRC_BIT specifies that the memory can be read as any memory access type.

pattern PEER_MEMORY_FEATURE_GENERIC_DST_BIT :: PeerMemoryFeatureFlagBits

PEER_MEMORY_FEATURE_GENERIC_DST_BIT specifies that the memory can be written as any memory access type. Shader atomics are considered to be writes.

Instances

Instances details
Eq PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Ord PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Read PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Show PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Storable PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Bits PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits

Methods

(.&.) :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits #

(.|.) :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits #

xor :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits #

complement :: PeerMemoryFeatureFlagBits -> PeerMemoryFeatureFlagBits #

shift :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

rotate :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

zeroBits :: PeerMemoryFeatureFlagBits #

bit :: Int -> PeerMemoryFeatureFlagBits #

setBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

clearBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

complementBit :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

testBit :: PeerMemoryFeatureFlagBits -> Int -> Bool #

bitSizeMaybe :: PeerMemoryFeatureFlagBits -> Maybe Int #

bitSize :: PeerMemoryFeatureFlagBits -> Int #

isSigned :: PeerMemoryFeatureFlagBits -> Bool #

shiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

unsafeShiftL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

shiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

unsafeShiftR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

rotateL :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

rotateR :: PeerMemoryFeatureFlagBits -> Int -> PeerMemoryFeatureFlagBits #

popCount :: PeerMemoryFeatureFlagBits -> Int #

Zero PeerMemoryFeatureFlagBits Source # 
Instance details

Defined in Vulkan.Core11.Enums.PeerMemoryFeatureFlagBits