| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
Vulkan.Extensions.VK_EXT_debug_utils
Synopsis
- setDebugUtilsObjectNameEXT :: forall io. MonadIO io => Device -> DebugUtilsObjectNameInfoEXT -> io ()
- setDebugUtilsObjectTagEXT :: forall io. MonadIO io => Device -> DebugUtilsObjectTagInfoEXT -> io ()
- queueBeginDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
- queueEndDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> io ()
- queueInsertDebugUtilsLabelEXT :: forall io. MonadIO io => Queue -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
- cmdBeginDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
- cmdUseDebugUtilsLabelEXT :: forall io r. MonadIO io => CommandBuffer -> DebugUtilsLabelEXT -> io r -> io r
- cmdEndDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> io ()
- cmdInsertDebugUtilsLabelEXT :: forall io. MonadIO io => CommandBuffer -> ("labelInfo" ::: DebugUtilsLabelEXT) -> io ()
- createDebugUtilsMessengerEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io DebugUtilsMessengerEXT
- withDebugUtilsMessengerEXT :: forall io r. MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> Maybe AllocationCallbacks -> (io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r) -> r
- destroyDebugUtilsMessengerEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessengerEXT -> ("allocator" ::: Maybe AllocationCallbacks) -> io ()
- submitDebugUtilsMessageEXT :: forall io. MonadIO io => Instance -> DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> DebugUtilsMessengerCallbackDataEXT -> io ()
- data DebugUtilsObjectNameInfoEXT = DebugUtilsObjectNameInfoEXT {}
- data DebugUtilsObjectTagInfoEXT = DebugUtilsObjectTagInfoEXT {- objectType :: ObjectType
- objectHandle :: Word64
- tagName :: Word64
- tagSize :: Word64
- tag :: Ptr ()
 
- data DebugUtilsLabelEXT = DebugUtilsLabelEXT {}
- data DebugUtilsMessengerCreateInfoEXT = DebugUtilsMessengerCreateInfoEXT {}
- data DebugUtilsMessengerCallbackDataEXT = DebugUtilsMessengerCallbackDataEXT {}
- newtype DebugUtilsMessengerCreateFlagsEXT = DebugUtilsMessengerCreateFlagsEXT Flags
- newtype DebugUtilsMessengerCallbackDataFlagsEXT = DebugUtilsMessengerCallbackDataFlagsEXT Flags
- newtype DebugUtilsMessageSeverityFlagBitsEXT where- DebugUtilsMessageSeverityFlagBitsEXT Flags
- pattern DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
- pattern DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
- pattern DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
- pattern DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT
 
- type DebugUtilsMessageSeverityFlagsEXT = DebugUtilsMessageSeverityFlagBitsEXT
- newtype DebugUtilsMessageTypeFlagBitsEXT where
- type DebugUtilsMessageTypeFlagsEXT = DebugUtilsMessageTypeFlagBitsEXT
- type PFN_vkDebugUtilsMessengerCallbackEXT = FunPtr FN_vkDebugUtilsMessengerCallbackEXT
- type FN_vkDebugUtilsMessengerCallbackEXT = DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> ("pUserData" ::: Ptr ()) -> IO Bool32
- type EXT_DEBUG_UTILS_SPEC_VERSION = 2
- pattern EXT_DEBUG_UTILS_SPEC_VERSION :: forall a. Integral a => a
- type EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils"
- pattern EXT_DEBUG_UTILS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
- newtype DebugUtilsMessengerEXT = DebugUtilsMessengerEXT Word64
Documentation
setDebugUtilsObjectNameEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Device | 
 | 
| -> DebugUtilsObjectNameInfoEXT | 
 | 
| -> io () | 
vkSetDebugUtilsObjectNameEXT - Give a user-friendly name to an object
Valid Usage
- pNameInfo->objectTypemust not be- OBJECT_TYPE_UNKNOWN
- pNameInfo->objectHandlemust not be- NULL_HANDLE
Valid Usage (Implicit)
- devicemust be a valid- Devicehandle
- pNameInfomust be a valid pointer to a valid- DebugUtilsObjectNameInfoEXTstructure
Host Synchronization
- Host access to pNameInfo->objectHandlemust be externally synchronized
Return Codes
See Also
setDebugUtilsObjectTagEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Device | 
 | 
| -> DebugUtilsObjectTagInfoEXT | 
 | 
| -> io () | 
vkSetDebugUtilsObjectTagEXT - Attach arbitrary data to an object
Valid Usage (Implicit)
- devicemust be a valid- Devicehandle
- pTagInfomust be a valid pointer to a valid- DebugUtilsObjectTagInfoEXTstructure
Host Synchronization
- Host access to pTagInfo->objectHandlemust be externally synchronized
Return Codes
See Also
queueBeginDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Queue | 
 
 | 
| -> ("labelInfo" ::: DebugUtilsLabelEXT) | 
 
 | 
| -> io () | 
vkQueueBeginDebugUtilsLabelEXT - Open a queue debug label region
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| - | - | Any | - | 
See Also
queueEndDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Queue | 
 | 
| -> io () | 
vkQueueEndDebugUtilsLabelEXT - Close a queue debug label region
Description
The calls to queueBeginDebugUtilsLabelEXT and
 queueEndDebugUtilsLabelEXT must be matched and balanced.
Valid Usage
- There must be an outstanding queueBeginDebugUtilsLabelEXTcommand prior to thequeueEndDebugUtilsLabelEXTon the queue
Valid Usage (Implicit)
- queuemust be a valid- Queuehandle
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| - | - | Any | - | 
See Also
queueInsertDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Queue | 
 
 | 
| -> ("labelInfo" ::: DebugUtilsLabelEXT) | 
 
 | 
| -> io () | 
vkQueueInsertDebugUtilsLabelEXT - Insert a label into a queue
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| - | - | Any | - | 
See Also
cmdBeginDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => CommandBuffer | 
 | 
| -> ("labelInfo" ::: DebugUtilsLabelEXT) | 
 | 
| -> io () | 
vkCmdBeginDebugUtilsLabelEXT - Open a command buffer debug label region
Valid Usage (Implicit)
- commandBuffermust be a valid- CommandBufferhandle
- pLabelInfomust be a valid pointer to a valid- DebugUtilsLabelEXTstructure
- commandBuffermust be in the recording state
- The CommandPoolthatcommandBufferwas allocated from must support graphics, or compute operations
Host Synchronization
- Host access to commandBuffermust be externally synchronized
- Host access to the CommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| Primary Secondary | Both | Graphics Compute | 
See Also
cmdUseDebugUtilsLabelEXT :: forall io r. MonadIO io => CommandBuffer -> DebugUtilsLabelEXT -> io r -> io r Source #
This function will call the supplied action between calls to
 cmdBeginDebugUtilsLabelEXT and cmdEndDebugUtilsLabelEXT
Note that cmdEndDebugUtilsLabelEXT is *not* called if an exception is
 thrown by the inner action.
cmdEndDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => CommandBuffer | 
 | 
| -> io () | 
vkCmdEndDebugUtilsLabelEXT - Close a command buffer label region
Description
An application may open a debug label region in one command buffer and
 close it in another, or otherwise split debug label regions across
 multiple command buffers or multiple queue submissions. When viewed from
 the linear series of submissions to a single queue, the calls to
 cmdBeginDebugUtilsLabelEXT and cmdEndDebugUtilsLabelEXT must be
 matched and balanced.
Valid Usage
- There must be an outstanding cmdBeginDebugUtilsLabelEXTcommand prior to thecmdEndDebugUtilsLabelEXTon the queue thatcommandBufferis submitted to
- If commandBufferis a secondary command buffer, there must be an outstandingcmdBeginDebugUtilsLabelEXTcommand recorded tocommandBufferthat has not previously been ended by a call tocmdEndDebugUtilsLabelEXT
Valid Usage (Implicit)
- commandBuffermust be a valid- CommandBufferhandle
- commandBuffermust be in the recording state
- The CommandPoolthatcommandBufferwas allocated from must support graphics, or compute operations
Host Synchronization
- Host access to commandBuffermust be externally synchronized
- Host access to the CommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| Primary Secondary | Both | Graphics Compute | 
See Also
cmdInsertDebugUtilsLabelEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => CommandBuffer | 
 | 
| -> ("labelInfo" ::: DebugUtilsLabelEXT) | |
| -> io () | 
vkCmdInsertDebugUtilsLabelEXT - Insert a label into a command buffer
Valid Usage (Implicit)
- commandBuffermust be a valid- CommandBufferhandle
- pLabelInfomust be a valid pointer to a valid- DebugUtilsLabelEXTstructure
- commandBuffermust be in the recording state
- The CommandPoolthatcommandBufferwas allocated from must support graphics, or compute operations
Host Synchronization
- Host access to commandBuffermust be externally synchronized
- Host access to the CommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
'
| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type | 
|---|---|---|---|
| Primary Secondary | Both | Graphics Compute | 
See Also
createDebugUtilsMessengerEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Instance | 
 | 
| -> DebugUtilsMessengerCreateInfoEXT | 
 | 
| -> ("allocator" ::: Maybe AllocationCallbacks) | 
 | 
| -> io DebugUtilsMessengerEXT | 
vkCreateDebugUtilsMessengerEXT - Create a debug messenger object
Valid Usage (Implicit)
- instancemust be a valid- Instancehandle
- pCreateInfomust be a valid pointer to a valid- DebugUtilsMessengerCreateInfoEXTstructure
- If pAllocatoris notNULL,pAllocatormust be a valid pointer to a validAllocationCallbacksstructure
- pMessengermust be a valid pointer to a- DebugUtilsMessengerEXThandle
Return Codes
The application must ensure that createDebugUtilsMessengerEXT is not
 executed in parallel with any Vulkan command that is also called with
 instance or child of instance as the dispatchable argument.
See Also
AllocationCallbacks,
 DebugUtilsMessengerCreateInfoEXT,
 DebugUtilsMessengerEXT,
 Instance
withDebugUtilsMessengerEXT :: forall io r. MonadIO io => Instance -> DebugUtilsMessengerCreateInfoEXT -> Maybe AllocationCallbacks -> (io DebugUtilsMessengerEXT -> (DebugUtilsMessengerEXT -> io ()) -> r) -> r Source #
A convenience wrapper to make a compatible pair of calls to
 createDebugUtilsMessengerEXT and destroyDebugUtilsMessengerEXT
To ensure that destroyDebugUtilsMessengerEXT is always called: pass
 bracket (or the allocate function from your
 favourite resource management library) as the first argument.
 To just extract the pair pass (,) as the first argument.
destroyDebugUtilsMessengerEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Instance | 
 | 
| -> DebugUtilsMessengerEXT | 
 | 
| -> ("allocator" ::: Maybe AllocationCallbacks) | 
 | 
| -> io () | 
vkDestroyDebugUtilsMessengerEXT - Destroy a debug messenger object
Valid Usage
- If AllocationCallbackswere provided whenmessengerwas created, a compatible set of callbacks must be provided here
- If no AllocationCallbackswere provided whenmessengerwas created,pAllocatormust beNULL
Valid Usage (Implicit)
- instancemust be a valid- Instancehandle
- If messengeris notNULL_HANDLE,messengermust be a validDebugUtilsMessengerEXThandle
- If pAllocatoris notNULL,pAllocatormust be a valid pointer to a validAllocationCallbacksstructure
- If messengeris a valid handle, it must have been created, allocated, or retrieved frominstance
Host Synchronization
- Host access to messengermust be externally synchronized
The application must ensure that destroyDebugUtilsMessengerEXT is
 not executed in parallel with any Vulkan command that is also called
 with instance or child of instance as the dispatchable argument.
See Also
submitDebugUtilsMessageEXT Source #
Arguments
| :: forall io. MonadIO io | |
| => Instance | 
 | 
| -> DebugUtilsMessageSeverityFlagBitsEXT | 
 | 
| -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) | 
 | 
| -> DebugUtilsMessengerCallbackDataEXT | 
 | 
| -> io () | 
vkSubmitDebugUtilsMessageEXT - Inject a message into a debug stream
Description
The call will propagate through the layers and generate callback(s) as
 indicated by the message’s flags. The parameters are passed on to the
 callback in addition to the pUserData value that was defined at the
 time the messenger was registered.
Valid Usage
- The objectTypemember of each element ofpCallbackData->pObjectsmust not beOBJECT_TYPE_UNKNOWN
Valid Usage (Implicit)
- instancemust be a valid- Instancehandle
- messageSeveritymust be a valid- DebugUtilsMessageSeverityFlagBitsEXTvalue
- messageTypesmust be a valid combination of- DebugUtilsMessageTypeFlagBitsEXTvalues
- messageTypesmust not be- 0
- pCallbackDatamust be a valid pointer to a valid- DebugUtilsMessengerCallbackDataEXTstructure
See Also
DebugUtilsMessageSeverityFlagBitsEXT, DebugUtilsMessageTypeFlagsEXT,
 DebugUtilsMessengerCallbackDataEXT, Instance
data DebugUtilsObjectNameInfoEXT Source #
VkDebugUtilsObjectNameInfoEXT - Specify parameters of a name to give to an object
Description
Applications may change the name associated with an object simply by
 calling setDebugUtilsObjectNameEXT again with a new string. If
 pObjectName is either NULL or an empty string, then any previously
 set name is removed.
Valid Usage
- If objectTypeisOBJECT_TYPE_UNKNOWN,objectHandlemust not beNULL_HANDLE
- If objectTypeis notOBJECT_TYPE_UNKNOWN,objectHandlemust beNULL_HANDLEor a valid Vulkan handle of the type associated withobjectTypeas defined in the VkObjectType and Vulkan Handle Relationship table
Valid Usage (Implicit)
- sTypemust be- STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT
- pNextmust be- NULL
- objectTypemust be a valid- ObjectTypevalue
- If pObjectNameis notNULL,pObjectNamemust be a null-terminated UTF-8 string
See Also
DebugUtilsMessengerCallbackDataEXT,
 ObjectType,
 StructureType,
 setDebugUtilsObjectNameEXT
Constructors
| DebugUtilsObjectNameInfoEXT | |
| Fields 
 | |
Instances
data DebugUtilsObjectTagInfoEXT Source #
VkDebugUtilsObjectTagInfoEXT - Specify parameters of a tag to attach to an object
Description
The tagName parameter gives a name or identifier to the type of data
 being tagged. This can be used by debugging layers to easily filter for
 only data that can be used by that implementation.
Valid Usage (Implicit)
See Also
Constructors
| DebugUtilsObjectTagInfoEXT | |
| Fields 
 | |
Instances
data DebugUtilsLabelEXT Source #
VkDebugUtilsLabelEXT - Specify parameters of a label region
Valid Usage (Implicit)
See Also
DebugUtilsMessengerCallbackDataEXT,
 StructureType,
 cmdBeginDebugUtilsLabelEXT, cmdInsertDebugUtilsLabelEXT,
 queueBeginDebugUtilsLabelEXT, queueInsertDebugUtilsLabelEXT
Constructors
| DebugUtilsLabelEXT | |
| Fields 
 | |
Instances
data DebugUtilsMessengerCreateInfoEXT Source #
VkDebugUtilsMessengerCreateInfoEXT - Structure specifying parameters of a newly created debug messenger
Description
For each DebugUtilsMessengerEXT that is
 created the DebugUtilsMessengerCreateInfoEXT::messageSeverity and
 DebugUtilsMessengerCreateInfoEXT::messageType determine when that
 DebugUtilsMessengerCreateInfoEXT::pfnUserCallback is called. The
 process to determine if the user’s pfnUserCallback is triggered when
 an event occurs is as follows:
- The implementation will perform a bitwise AND of the event’s - DebugUtilsMessageSeverityFlagBitsEXTwith the- messageSeverityprovided during creation of the- DebugUtilsMessengerEXTobject.- If the value is 0, the message is skipped.
 
- The implementation will perform bitwise AND of the event’s - DebugUtilsMessageTypeFlagBitsEXTwith the- messageTypeprovided during the creation of the- DebugUtilsMessengerEXTobject.- If the value is 0, the message is skipped.
 
- The callback will trigger a debug message for the current event
The callback will come directly from the component that detected the event, unless some other layer intercepts the calls for its own purposes (filter them in a different way, log to a system error log, etc.).
An application can receive multiple callbacks if multiple
 DebugUtilsMessengerEXT objects are created.
 A callback will always be executed in the same thread as the originating
 Vulkan call.
A callback can be called from multiple threads simultaneously (if the application is making Vulkan calls from multiple threads).
Valid Usage (Implicit)
See Also
PFN_vkDebugUtilsMessengerCallbackEXT,
 DebugUtilsMessageSeverityFlagsEXT, DebugUtilsMessageTypeFlagsEXT,
 DebugUtilsMessengerCreateFlagsEXT,
 StructureType,
 createDebugUtilsMessengerEXT
Constructors
| DebugUtilsMessengerCreateInfoEXT | |
| Fields 
 | |
Instances
data DebugUtilsMessengerCallbackDataEXT Source #
VkDebugUtilsMessengerCallbackDataEXT - Structure specifying parameters returned to the callback
Description
Note
This structure should only be considered valid during the lifetime of the triggered callback.
Since adding queue and command buffer labels behaves like pushing and
 popping onto a stack, the order of both pQueueLabels and
 pCmdBufLabels is based on the order the labels were defined. The
 result is that the first label in either pQueueLabels or
 pCmdBufLabels will be the first defined (and therefore the oldest)
 while the last label in each list will be the most recent.
Note
pQueueLabels will only be non-NULL if one of the objects in
 pObjects can be related directly to a defined
 Queue which has had one or more labels
 associated with it.
Likewise, pCmdBufLabels will only be non-NULL if one of the objects
 in pObjects can be related directly to a defined
 CommandBuffer which has had one or more labels
 associated with it. Additionally, while command buffer labels allow for
 beginning and ending across different command buffers, the debug
 messaging framework cannot guarantee that labels in pCmdBufLables
 will contain those defined outside of the associated command buffer.
 This is partially due to the fact that the association of one command
 buffer with another may not have been defined at the time the debug
 message is triggered.
Valid Usage (Implicit)
- sTypemust be- STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT
- pNextmust be- NULL
- flagsmust be- 0
- If pMessageIdNameis notNULL,pMessageIdNamemust be a null-terminated UTF-8 string
- pMessagemust be a null-terminated UTF-8 string
- If queueLabelCountis not0,pQueueLabelsmust be a valid pointer to an array ofqueueLabelCountvalidDebugUtilsLabelEXTstructures
- If cmdBufLabelCountis not0,pCmdBufLabelsmust be a valid pointer to an array ofcmdBufLabelCountvalidDebugUtilsLabelEXTstructures
- If objectCountis not0,pObjectsmust be a valid pointer to an array ofobjectCountvalidDebugUtilsObjectNameInfoEXTstructures
See Also
DebugUtilsLabelEXT, DebugUtilsMessengerCallbackDataFlagsEXT,
 DebugUtilsObjectNameInfoEXT,
 StructureType,
 submitDebugUtilsMessageEXT
Constructors
| DebugUtilsMessengerCallbackDataEXT | |
| Fields 
 | |
Instances
newtype DebugUtilsMessengerCreateFlagsEXT Source #
VkDebugUtilsMessengerCreateFlagsEXT - Reserved for future use
Description
DebugUtilsMessengerCreateFlagsEXT is a bitmask type for setting a
 mask, but is currently reserved for future use.
See Also
Constructors
| DebugUtilsMessengerCreateFlagsEXT Flags | 
Instances
newtype DebugUtilsMessengerCallbackDataFlagsEXT Source #
VkDebugUtilsMessengerCallbackDataFlagsEXT - Reserved for future use
Description
DebugUtilsMessengerCallbackDataFlagsEXT is a bitmask type for setting
 a mask, but is currently reserved for future use.
See Also
Constructors
| DebugUtilsMessengerCallbackDataFlagsEXT Flags | 
Instances
newtype DebugUtilsMessageSeverityFlagBitsEXT Source #
VkDebugUtilsMessageSeverityFlagBitsEXT - Bitmask specifying which severities of events cause a debug messenger callback
See Also
DebugUtilsMessageSeverityFlagsEXT, submitDebugUtilsMessageEXT
Constructors
| DebugUtilsMessageSeverityFlagBitsEXT Flags | 
Bundled Patterns
| pattern DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT | 
 | 
| pattern DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT | 
 | 
| pattern DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT | 
 | 
| pattern DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: DebugUtilsMessageSeverityFlagBitsEXT | 
 | 
Instances
newtype DebugUtilsMessageTypeFlagBitsEXT Source #
VkDebugUtilsMessageTypeFlagBitsEXT - Bitmask specifying which types of events cause a debug messenger callback
See Also
Constructors
| DebugUtilsMessageTypeFlagBitsEXT Flags | 
Bundled Patterns
| pattern DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT | 
 | 
| pattern DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT | 
 | 
| pattern DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT :: DebugUtilsMessageTypeFlagBitsEXT | 
 | 
Instances
type PFN_vkDebugUtilsMessengerCallbackEXT = FunPtr FN_vkDebugUtilsMessengerCallbackEXT Source #
PFN_vkDebugUtilsMessengerCallbackEXT - Application-defined debug messenger callback function
Description
The callback must not call destroyDebugUtilsMessengerEXT.
The callback returns a Bool32, which is
 interpreted in a layer-specified manner. The application should always
 return FALSE. The
 TRUE value is reserved for use in layer
 development.
See Also
type FN_vkDebugUtilsMessengerCallbackEXT = DebugUtilsMessageSeverityFlagBitsEXT -> ("messageTypes" ::: DebugUtilsMessageTypeFlagsEXT) -> ("pCallbackData" ::: Ptr DebugUtilsMessengerCallbackDataEXT) -> ("pUserData" ::: Ptr ()) -> IO Bool32 Source #
type EXT_DEBUG_UTILS_SPEC_VERSION = 2 Source #
pattern EXT_DEBUG_UTILS_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils" Source #
pattern EXT_DEBUG_UTILS_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #
newtype DebugUtilsMessengerEXT Source #
VkDebugUtilsMessengerEXT - Opaque handle to a debug messenger object
Description
The debug messenger will provide detailed feedback on the application’s use of Vulkan when events of interest occur. When an event of interest does occur, the debug messenger will submit a debug message to the debug callback that was provided during its creation. Additionally, the debug messenger is responsible with filtering out debug messages that the callback is not interested in and will only provide desired debug messages.
See Also
Constructors
| DebugUtilsMessengerEXT Word64 |