# Interface VulkanDebugUtilsType

All Superinterfaces:
  `VulkanExtensionType`

All Known Implementing Classes:
  `VulkanLWJGLExtDebugUtils`

public interface VulkanDebugUtilsType extends VulkanExtensionType

See Also:
  - "VK_EXT_debug_utils"

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final VulkanDebugUtilsLabelColor`
  `DEFAULT_LABEL_COLOR`
  The default label color.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `VulkanDebugUtilsRegionType`
  `begin(VulkanCommandBufferType commandBuffer, VulkanDebugUtilsLabelEXT label)`
  Open a command buffer debug label region.
  `default VulkanDebugUtilsRegionType`
  `begin(VulkanCommandBufferType commandBuffer, String label)`
  Open a command buffer debug label region.
  `VulkanDebugUtilsMessengerEXTType`
  `createDebugUtilsMessenger(VulkanInstanceType instance, VulkanDebugUtilsMessengerCreateInfoEXT info)`
  Create a debug messenger object.
  `void`
  `insertInto(VulkanCommandBufferType commandBuffer, VulkanDebugUtilsLabelEXT label)`
  Insert a debug label into a command buffer.
  `default void`
  `insertInto(VulkanCommandBufferType commandBuffer, String label)`
  Insert a debug label into a command buffer.
  `default String`
  `name()`
  `void`
  `setObjectName(VulkanLogicalDeviceType device, VulkanDebugUtilsObjectNameInfoEXT info)`
  Set the name of a given object.

- ## Field Details

  - ### DEFAULT_LABEL_COLOR

    static final VulkanDebugUtilsLabelColor DEFAULT_LABEL_COLOR
    The default label color.

- ## Method Details

  - ### name

    default String name()
    Specified by:
      `name` in interface `VulkanExtensionType`
    Returns:
      The name of the extension (such as "VK_KHR_Surface")

  - ### createDebugUtilsMessenger

    VulkanDebugUtilsMessengerEXTType createDebugUtilsMessenger(VulkanInstanceType instance, VulkanDebugUtilsMessengerCreateInfoEXT info) throws VulkanException
    Create a debug messenger object.
    Parameters:
      `instance` - The instance
      `info` - The creation info
    Returns:
      A messenger
    Throws:
      `VulkanException` - On errors

  - ### begin

    VulkanDebugUtilsRegionType begin(VulkanCommandBufferType commandBuffer, VulkanDebugUtilsLabelEXT label) throws VulkanException
    Open a command buffer debug label region.
    Parameters:
      `commandBuffer` - The command buffer
      `label` - The region label
    Returns:
      The section
    Throws:
      `VulkanException` - On errors

  - ### begin

    default VulkanDebugUtilsRegionType begin(VulkanCommandBufferType commandBuffer, String label) throws VulkanException
    Open a command buffer debug label region.
    Parameters:
      `commandBuffer` - The command buffer
      `label` - The region label
    Returns:
      The section
    Throws:
      `VulkanException` - On errors

  - ### insertInto

    void insertInto(VulkanCommandBufferType commandBuffer, VulkanDebugUtilsLabelEXT label) throws VulkanException
    Insert a debug label into a command buffer.
    Parameters:
      `commandBuffer` - The command buffer
      `label` - The label
    Throws:
      `VulkanException` - On errors

  - ### insertInto

    default void insertInto(VulkanCommandBufferType commandBuffer, String label) throws VulkanException
    Insert a debug label into a command buffer.
    Parameters:
      `commandBuffer` - The command buffer
      `label` - The label
    Throws:
      `VulkanException` - On errors

  - ### setObjectName

    void setObjectName(VulkanLogicalDeviceType device, VulkanDebugUtilsObjectNameInfoEXT info) throws VulkanException
    Set the name of a given object.
    Parameters:
      `device` - The logical device
      `info` - The info
    Throws:
      `VulkanException` - On errors