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

Vulkan.Extensions.VK_EXT_display_surface_counter

Synopsis

Documentation

getPhysicalDeviceSurfaceCapabilities2EXT Source #

Arguments

:: forall io. MonadIO io 
=> PhysicalDevice

physicalDevice is the physical device that will be associated with the swapchain to be created, as described for createSwapchainKHR.

-> SurfaceKHR

surface is the surface that will be associated with the swapchain.

-> io SurfaceCapabilities2EXT 

vkGetPhysicalDeviceSurfaceCapabilities2EXT - Query surface capabilities

Description

getPhysicalDeviceSurfaceCapabilities2EXT behaves similarly to getPhysicalDeviceSurfaceCapabilitiesKHR, with the ability to return extended information by adding extending structures to the pNext chain of its pSurfaceCapabilities parameter.

Valid Usage (Implicit)

  • surface must be a valid SurfaceKHR handle
  • pSurfaceCapabilities must be a valid pointer to a SurfaceCapabilities2EXT structure
  • Both of physicalDevice, and surface must have been created, allocated, or retrieved from the same Instance

Return Codes

Success
Failure

See Also

PhysicalDevice, SurfaceCapabilities2EXT, SurfaceKHR

data SurfaceCapabilities2EXT Source #

VkSurfaceCapabilities2EXT - Structure describing capabilities of a surface

Members

All members of SurfaceCapabilities2EXT are identical to the corresponding members of SurfaceCapabilitiesKHR where one exists. The remaining members are:

Valid Usage (Implicit)

See Also

CompositeAlphaFlagsKHR, Extent2D, ImageUsageFlags, StructureType, SurfaceCounterFlagsEXT, SurfaceTransformFlagBitsKHR, SurfaceTransformFlagsKHR, getPhysicalDeviceSurfaceCapabilities2EXT

Instances

Instances details
Show SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Generic SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Associated Types

type Rep SurfaceCapabilities2EXT :: Type -> Type #

FromCStruct SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

ToCStruct SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Zero SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

type Rep SurfaceCapabilities2EXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

type Rep SurfaceCapabilities2EXT = D1 ('MetaData "SurfaceCapabilities2EXT" "Vulkan.Extensions.VK_EXT_display_surface_counter" "vulkan-3.6.9-inplace" 'False) (C1 ('MetaCons "SurfaceCapabilities2EXT" 'PrefixI 'True) (((S1 ('MetaSel ('Just "minImageCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Word32) :*: S1 ('MetaSel ('Just "maxImageCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "currentExtent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Extent2D) :*: (S1 ('MetaSel ('Just "minImageExtent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Extent2D) :*: S1 ('MetaSel ('Just "maxImageExtent") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Extent2D)))) :*: ((S1 ('MetaSel ('Just "maxImageArrayLayers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "supportedTransforms") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SurfaceTransformFlagsKHR) :*: S1 ('MetaSel ('Just "currentTransform") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SurfaceTransformFlagBitsKHR))) :*: (S1 ('MetaSel ('Just "supportedCompositeAlpha") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CompositeAlphaFlagsKHR) :*: (S1 ('MetaSel ('Just "supportedUsageFlags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ImageUsageFlags) :*: S1 ('MetaSel ('Just "supportedSurfaceCounters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SurfaceCounterFlagsEXT))))))

newtype SurfaceCounterFlagBitsEXT Source #

VkSurfaceCounterFlagBitsEXT - Surface-relative counter types

See Also

SurfaceCounterFlagsEXT, getSwapchainCounterEXT

Bundled Patterns

pattern SURFACE_COUNTER_VBLANK_EXT :: SurfaceCounterFlagBitsEXT

SURFACE_COUNTER_VBLANK_EXT specifies a counter incrementing once every time a vertical blanking period occurs on the display associated with the surface.

Instances

Instances details
Eq SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Ord SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Read SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Show SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Storable SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Bits SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

Methods

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

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

xor :: SurfaceCounterFlagBitsEXT -> SurfaceCounterFlagBitsEXT -> SurfaceCounterFlagBitsEXT #

complement :: SurfaceCounterFlagBitsEXT -> SurfaceCounterFlagBitsEXT #

shift :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

rotate :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

zeroBits :: SurfaceCounterFlagBitsEXT #

bit :: Int -> SurfaceCounterFlagBitsEXT #

setBit :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

clearBit :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

complementBit :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

testBit :: SurfaceCounterFlagBitsEXT -> Int -> Bool #

bitSizeMaybe :: SurfaceCounterFlagBitsEXT -> Maybe Int #

bitSize :: SurfaceCounterFlagBitsEXT -> Int #

isSigned :: SurfaceCounterFlagBitsEXT -> Bool #

shiftL :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

unsafeShiftL :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

shiftR :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

unsafeShiftR :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

rotateL :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

rotateR :: SurfaceCounterFlagBitsEXT -> Int -> SurfaceCounterFlagBitsEXT #

popCount :: SurfaceCounterFlagBitsEXT -> Int #

Zero SurfaceCounterFlagBitsEXT Source # 
Instance details

Defined in Vulkan.Extensions.VK_EXT_display_surface_counter

type EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME = "VK_EXT_display_surface_counter" Source #

newtype SurfaceKHR Source #

Constructors

SurfaceKHR Word64 

Instances

Instances details
Eq SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Ord SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Show SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Storable SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

Zero SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

HasObjectType SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

IsHandle SurfaceKHR Source # 
Instance details

Defined in Vulkan.Extensions.Handles

newtype CompositeAlphaFlagBitsKHR Source #

VkCompositeAlphaFlagBitsKHR - alpha compositing modes supported on a device

Description

These values are described as follows:

See Also

CompositeAlphaFlagsKHR, SwapchainCreateInfoKHR

Bundled Patterns

pattern COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: CompositeAlphaFlagBitsKHR

COMPOSITE_ALPHA_OPAQUE_BIT_KHR: The alpha channel, if it exists, of the images is ignored in the compositing process. Instead, the image is treated as if it has a constant alpha of 1.0.

pattern COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR

COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR: The alpha channel, if it exists, of the images is respected in the compositing process. The non-alpha channels of the image are expected to already be multiplied by the alpha channel by the application.

pattern COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: CompositeAlphaFlagBitsKHR

COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR: The alpha channel, if it exists, of the images is respected in the compositing process. The non-alpha channels of the image are not expected to already be multiplied by the alpha channel by the application; instead, the compositor will multiply the non-alpha channels of the image by the alpha channel during compositing.

pattern COMPOSITE_ALPHA_INHERIT_BIT_KHR :: CompositeAlphaFlagBitsKHR

COMPOSITE_ALPHA_INHERIT_BIT_KHR: The way in which the presentation engine treats the alpha channel in the images is unknown to the Vulkan API. Instead, the application is responsible for setting the composite alpha blending mode using native window system commands. If the application does not set the blending mode using native window system commands, then a platform-specific default will be used.

Instances

Instances details
Eq CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Ord CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Read CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Show CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Storable CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Bits CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Methods

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

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

xor :: CompositeAlphaFlagBitsKHR -> CompositeAlphaFlagBitsKHR -> CompositeAlphaFlagBitsKHR #

complement :: CompositeAlphaFlagBitsKHR -> CompositeAlphaFlagBitsKHR #

shift :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

rotate :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

zeroBits :: CompositeAlphaFlagBitsKHR #

bit :: Int -> CompositeAlphaFlagBitsKHR #

setBit :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

clearBit :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

complementBit :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

testBit :: CompositeAlphaFlagBitsKHR -> Int -> Bool #

bitSizeMaybe :: CompositeAlphaFlagBitsKHR -> Maybe Int #

bitSize :: CompositeAlphaFlagBitsKHR -> Int #

isSigned :: CompositeAlphaFlagBitsKHR -> Bool #

shiftL :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

unsafeShiftL :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

shiftR :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

unsafeShiftR :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

rotateL :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

rotateR :: CompositeAlphaFlagBitsKHR -> Int -> CompositeAlphaFlagBitsKHR #

popCount :: CompositeAlphaFlagBitsKHR -> Int #

Zero CompositeAlphaFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

newtype SurfaceTransformFlagBitsKHR Source #

Bundled Patterns

pattern SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_IDENTITY_BIT_KHR specifies that image content is presented without being transformed.

pattern SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_ROTATE_90_BIT_KHR specifies that image content is rotated 90 degrees clockwise.

pattern SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_ROTATE_180_BIT_KHR specifies that image content is rotated 180 degrees clockwise.

pattern SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_ROTATE_270_BIT_KHR specifies that image content is rotated 270 degrees clockwise.

pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR specifies that image content is mirrored horizontally.

pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR specifies that image content is mirrored horizontally, then rotated 90 degrees clockwise.

pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR specifies that image content is mirrored horizontally, then rotated 180 degrees clockwise.

pattern SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR specifies that image content is mirrored horizontally, then rotated 270 degrees clockwise.

pattern SURFACE_TRANSFORM_INHERIT_BIT_KHR :: SurfaceTransformFlagBitsKHR

SURFACE_TRANSFORM_INHERIT_BIT_KHR specifies that the presentation transform is not specified, and is instead determined by platform-specific considerations and mechanisms outside Vulkan.

Instances

Instances details
Eq SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Ord SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Read SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Show SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Storable SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Bits SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface

Methods

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

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

xor :: SurfaceTransformFlagBitsKHR -> SurfaceTransformFlagBitsKHR -> SurfaceTransformFlagBitsKHR #

complement :: SurfaceTransformFlagBitsKHR -> SurfaceTransformFlagBitsKHR #

shift :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

rotate :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

zeroBits :: SurfaceTransformFlagBitsKHR #

bit :: Int -> SurfaceTransformFlagBitsKHR #

setBit :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

clearBit :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

complementBit :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

testBit :: SurfaceTransformFlagBitsKHR -> Int -> Bool #

bitSizeMaybe :: SurfaceTransformFlagBitsKHR -> Maybe Int #

bitSize :: SurfaceTransformFlagBitsKHR -> Int #

isSigned :: SurfaceTransformFlagBitsKHR -> Bool #

shiftL :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

unsafeShiftL :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

shiftR :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

unsafeShiftR :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

rotateL :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

rotateR :: SurfaceTransformFlagBitsKHR -> Int -> SurfaceTransformFlagBitsKHR #

popCount :: SurfaceTransformFlagBitsKHR -> Int #

Zero SurfaceTransformFlagBitsKHR Source # 
Instance details

Defined in Vulkan.Extensions.VK_KHR_surface