# vkSubmitDebugUtilsMessageEXT(3) Manual Page

## Name

vkSubmitDebugUtilsMessageEXT - Inject a message into a debug stream

## C Specification

There may be times that a user wishes to intentionally submit a debug message. To do this, call:

    void vkSubmitDebugUtilsMessageEXT(
        VkInstance                                  instance,
        VkDebugUtilsMessageSeverityFlagBitsEXT      messageSeverity,
        VkDebugUtilsMessageTypeFlagsEXT             messageTypes,
        const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);

## Parameters

- `instance` is the debug stream’s VkInstance.

- `messageSeverity` is the VkDebugUtilsMessageSeverityFlagBitsEXT severity of this event/message.

- `messageTypes` is a bitmask of VkDebugUtilsMessageTypeFlagBitsEXT specifying which type of event(s) to identify with this message.

- `pCallbackData` contains all the callback related data in the VkDebugUtilsMessengerCallbackDataEXT structure.

## 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 `objectType` member of each element of `pCallbackData->pObjects` must not be `VK_OBJECT_TYPE_UNKNOWN`

Valid Usage (Implicit)

- `instance` must be a valid VkInstance handle

- `messageSeverity` must be a valid VkDebugUtilsMessageSeverityFlagBitsEXT value

- `messageTypes` must be a valid combination of VkDebugUtilsMessageTypeFlagBitsEXT values

- `messageTypes` must not be `0`

- `pCallbackData` must be a valid pointer to a valid VkDebugUtilsMessengerCallbackDataEXT structure

## See Also

VkDebugUtilsMessageSeverityFlagBitsEXT, VkDebugUtilsMessageTypeFlagsEXT, VkDebugUtilsMessengerCallbackDataEXT, VkInstance

## 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 (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.