Interface VkDebugReportCallbackEXTI

  • All Superinterfaces:
    CallbackI, CallbackI.I, Pointer
    All Known Implementing Classes:
    VkDebugReportCallbackEXT


    @FunctionalInterface
    public interface VkDebugReportCallbackEXTI
    extends CallbackI.I
    Instances of this interface may be set to the pfnCallback member of the VkDebugReportCallbackCreateInfoEXT struct.

    A callback will be made for issues that match any bit set in its flags. 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 different way, log to 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).

    • Method Detail

      • address

        default long address()
        Description copied from interface: Pointer
        Returns the raw pointer address as a long value.
        Specified by:
        address in interface Pointer
        Returns:
        the pointer address
      • callback

        default int callback(long args)
        Description copied from interface: CallbackI.I
        Will be called by native code.
        Specified by:
        callback in interface CallbackI.I
        Parameters:
        args - pointer to a DCArgs iterator
        Returns:
        the value to store to the result DCValue
      • invoke

        int invoke(int flags,
                   int objectType,
                   long object,
                   long location,
                   int messageCode,
                   long pLayerPrefix,
                   long pMessage,
                   long pUserData)
        Will be called by the Vulkan implementation for events of interest to the application.
        Parameters:
        flags - indicates the VkDebugReportFlagBitsEXT that triggered this callback
        objectType - the type of object being used / created at the time the event was triggered.
        object - gives the object where the issue was detected. object may be NULL_HANDLE if there is no object associated with the event.
        location - location is a component (layer, driver, loader) defined value that indicates the "location" of the trigger. This is an optional value.
        messageCode - a layer defined value indicating what test triggered this callback
        pLayerPrefix - abbreviation of the component making the callback
        pMessage - a null terminated string detailing the trigger conditions
        pUserData - the user data given when the DebugReportCallback was created
        Returns:
        a VkBool32 that indicates to the calling layer if the Vulkan call should be aborted or not. Applications should always return FALSE so that they see the same behavior with and without validation layers enabled.