{-# language CPP #-}
module Vulkan.Extensions.VK_EXT_calibrated_timestamps ( pattern STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT
, pattern TIME_DOMAIN_DEVICE_EXT
, pattern TIME_DOMAIN_CLOCK_MONOTONIC_EXT
, pattern TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT
, pattern TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT
, getPhysicalDeviceCalibrateableTimeDomainsEXT
, getCalibratedTimestampsEXT
, TimeDomainEXT
, CalibratedTimestampInfoEXT
, EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION
, pattern EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION
, EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME
, pattern EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME
, CalibratedTimestampInfoKHR(..)
, getPhysicalDeviceCalibrateableTimeDomainsKHR
, getCalibratedTimestampsKHR
, TimeDomainKHR(..)
) where
import Data.String (IsString)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (getCalibratedTimestampsKHR)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (getPhysicalDeviceCalibrateableTimeDomainsKHR)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (CalibratedTimestampInfoKHR)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR)
import Vulkan.Core10.Enums.StructureType (StructureType(STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR(TIME_DOMAIN_CLOCK_MONOTONIC_KHR))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR(TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR(TIME_DOMAIN_DEVICE_KHR))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR(TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (getCalibratedTimestampsKHR)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (getPhysicalDeviceCalibrateableTimeDomainsKHR)
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (CalibratedTimestampInfoKHR(..))
import Vulkan.Extensions.VK_KHR_calibrated_timestamps (TimeDomainKHR(..))
pattern $bSTRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: StructureType
$mSTRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: forall {r}. StructureType -> ((# #) -> r) -> ((# #) -> r) -> r
STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT = STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR
pattern $bTIME_DOMAIN_DEVICE_EXT :: TimeDomainKHR
$mTIME_DOMAIN_DEVICE_EXT :: forall {r}. TimeDomainKHR -> ((# #) -> r) -> ((# #) -> r) -> r
TIME_DOMAIN_DEVICE_EXT = TIME_DOMAIN_DEVICE_KHR
pattern $bTIME_DOMAIN_CLOCK_MONOTONIC_EXT :: TimeDomainKHR
$mTIME_DOMAIN_CLOCK_MONOTONIC_EXT :: forall {r}. TimeDomainKHR -> ((# #) -> r) -> ((# #) -> r) -> r
TIME_DOMAIN_CLOCK_MONOTONIC_EXT = TIME_DOMAIN_CLOCK_MONOTONIC_KHR
pattern $bTIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: TimeDomainKHR
$mTIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: forall {r}. TimeDomainKHR -> ((# #) -> r) -> ((# #) -> r) -> r
TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR
pattern $bTIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: TimeDomainKHR
$mTIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: forall {r}. TimeDomainKHR -> ((# #) -> r) -> ((# #) -> r) -> r
TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT = TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR
getPhysicalDeviceCalibrateableTimeDomainsEXT :: PhysicalDevice
-> io (Result, "timeDomains" ::: Vector TimeDomainKHR)
getPhysicalDeviceCalibrateableTimeDomainsEXT = PhysicalDevice
-> io (Result, "timeDomains" ::: Vector TimeDomainKHR)
forall (io :: * -> *).
MonadIO io =>
PhysicalDevice
-> io (Result, "timeDomains" ::: Vector TimeDomainKHR)
getPhysicalDeviceCalibrateableTimeDomainsKHR
getCalibratedTimestampsEXT :: Device
-> ("timestampInfos" ::: Vector CalibratedTimestampInfoKHR)
-> io ("timestamps" ::: Vector Word64, Word64)
getCalibratedTimestampsEXT = Device
-> ("timestampInfos" ::: Vector CalibratedTimestampInfoKHR)
-> io ("timestamps" ::: Vector Word64, Word64)
forall (io :: * -> *).
MonadIO io =>
Device
-> ("timestampInfos" ::: Vector CalibratedTimestampInfoKHR)
-> io ("timestamps" ::: Vector Word64, Word64)
getCalibratedTimestampsKHR
type TimeDomainEXT = TimeDomainKHR
type CalibratedTimestampInfoEXT = CalibratedTimestampInfoKHR
type EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION = 2
pattern EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: forall a . Integral a => a
pattern $bEXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: forall a. Integral a => a
$mEXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: forall {r} {a}.
Integral a =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION = 2
type EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME = "VK_EXT_calibrated_timestamps"
pattern EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: forall a . (Eq a, IsString a) => a
pattern $bEXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
$mEXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: forall {r} {a}.
(Eq a, IsString a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME = "VK_EXT_calibrated_timestamps"