VkDebugReportCallbackCreateInfoEXT(3)

# VkDebugReportCallbackCreateInfoEXT(3) Manual Page

## Name

VkDebugReportCallbackCreateInfoEXT - Structure specifying parameters of a newly created debug report callback

Loading… please wait.

## C Specification

The definition of VkDebugReportCallbackCreateInfoEXT is:

    // Provided by VK_EXT_debug_report
    typedef struct VkDebugReportCallbackCreateInfoEXT {
        VkStructureType                 sType;
        const void*                     pNext;
        VkDebugReportFlagsEXT           flags;
        PFN_vkDebugReportCallbackEXT    pfnCallback;
        void*                           pUserData;
    } VkDebugReportCallbackCreateInfoEXT;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `flags` is a bitmask of VkDebugReportFlagBitsEXT specifying which event(s) will cause this callback to be called.

- `pfnCallback` is the application callback function to call.

- `pUserData` is user data to be passed to the callback.

## Description

For each `VkDebugReportCallbackEXT` that is created the `VkDebugReportCallbackCreateInfoEXT`::`flags` determine when that `VkDebugReportCallbackCreateInfoEXT`::`pfnCallback` is called. When an event happens, the implementation will do a bitwise AND of the event’s VkDebugReportFlagBitsEXT flags to each `VkDebugReportCallbackEXT` object’s flags. For each non-zero result the corresponding callback will be called. 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 may receive multiple callbacks if multiple `VkDebugReportCallbackEXT` objects were created. A callback will always be executed in the same thread as the originating Vulkan call.

A callback may be called from multiple threads simultaneously (if the application is making Vulkan calls from multiple threads).

Valid Usage (Implicit)

- VUID-VkDebugReportCallbackCreateInfoEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT`

- VUID-VkDebugReportCallbackCreateInfoEXT-flags-parameter
  `flags` must be a valid combination of VkDebugReportFlagBitsEXT values

- VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-parameter
  `pfnCallback` must be a valid PFN_vkDebugReportCallbackEXT value

## See Also

PFN_vkDebugReportCallbackEXT, VK_EXT_debug_report, VkDebugReportFlagsEXT, VkStructureType, vkCreateDebugReportCallbackEXT

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0