Top Description Fields Methods
org.lwjgl.openxr

public Interface XrDebugUtilsMessengerCallbackEXTI

extends CallbackI
Known Direct Implementers
org.lwjgl.openxr.XrDebugUtilsMessengerCallbackEXT
Annotations
@FunctionalInterface
@NativeType:PFN_xrDebugUtilsMessengerCallbackEXT
Imports
org.lwjgl.system.*, org.lwjgl.system.libffi.*

Type of callback function invoked by the debug utils.
C Specification

typedef XrBool32 (XRAPI_PTR *PFN_xrDebugUtilsMessengerCallbackEXT)(
            XrDebugUtilsMessageSeverityFlagsEXT              messageSeverity,
            XrDebugUtilsMessageTypeFlagsEXT                  messageTypes,
            const XrDebugUtilsMessengerCallbackDataEXT*      callbackData,
            void*                                            userData);
Description

The callback must not call DestroyDebugUtilsMessengerEXT.

The callback returns an XrBool32 that indicates to the calling layer the application’s desire to abort the call. A value of TRUE indicates that the application wants to abort this call. If the application returns FALSE, the function must not be aborted. Applications should always return FALSE so that they see the same behavior with and without validation layers enabled.

If the application returns TRUE from its callback and the OpenXR call being aborted returns an XrResult, the layer will return ERROR_VALIDATION_FAILURE.

The object pointed to by callbackData (and any pointers in it recursively) must be valid during the lifetime of the triggered callback. It may become invalid afterwards.

See Also

XrDebugUtilsMessengerCreateInfoEXT, CreateDebugUtilsMessengerEXT

Type


XrBool32 (*invoke) (
    XrDebugUtilsMessageSeverityFlagsEXT messageSeverity,
    XrDebugUtilsMessageTypeFlagsEXT messageTypes,
    XrDebugUtilsMessengerCallbackDataEXT const *callbackData,
    void *userData
)

Field Summary

Modifier and TypeField and Description
public static final FFICIF

Method Summary

Modifier and TypeMethod and Description
public default void
callback(long
a pointer to the memory used for the function's return value.

If the function is declared as returning void, then this value is garbage and should not be used.

Otherwise, the callback must fill the object to which this points, following the same special promotion behavior as LibFFI#ffi_call. That is, in most cases, ret points to an object of exactly the size of the type specified when CIF was constructed. However, integral types narrower than the system register size are widened. In these cases your program may assume that ret points to an ffi_arg object.

ret
,
long
a vector of pointers to memory holding the arguments to the function
args
)

Implements org.lwjgl.system.CallbackI.callback.

The Java method that will be called from native code when the native callback function is invoked.
public default FFICIF
getCallInterface()

Implements org.lwjgl.system.CallbackI.getCallInterface.

Returns the libffi Call Interface for this callback function.
public int
invoke(long
indicates the single bit value of XrDebugUtilsMessageSeverityFlagsEXT that triggered this callback.
messageSeverity
,
long
indicates the XrDebugUtilsMessageTypeFlagsEXT specifying which types of event triggered this callback.
messageTypes
,
long
contains all the callback related data in the XrDebugUtilsMessengerCallbackDataEXT structure.
callbackData
,
long
the user data provided when the XrDebugUtilsMessengerEXT was created.
userData
)

Type of callback function invoked by the debug utils.

Inherited from org.lwjgl.system.CallbackI:
address

Field Detail

CIFback to summary
public static final FFICIF CIF

Method Detail

callbackback to summary
public default void callback(long ret, long args)

Implements org.lwjgl.system.CallbackI.callback.

Doc from org.lwjgl.system.CallbackI.callback.

The Java method that will be called from native code when the native callback function is invoked.

Parameters
ret:long

a pointer to the memory used for the function's return value.

If the function is declared as returning void, then this value is garbage and should not be used.

Otherwise, the callback must fill the object to which this points, following the same special promotion behavior as LibFFI#ffi_call. That is, in most cases, ret points to an object of exactly the size of the type specified when CIF was constructed. However, integral types narrower than the system register size are widened. In these cases your program may assume that ret points to an ffi_arg object.

args:long

a vector of pointers to memory holding the arguments to the function

Annotations
@Override
getCallInterfaceback to summary
public default FFICIF getCallInterface()

Implements org.lwjgl.system.CallbackI.getCallInterface.

Doc from org.lwjgl.system.CallbackI.getCallInterface.

Returns the libffi Call Interface for this callback function. [INTERNAL API]

Returns:FFICIF

the CIF structure for this callback function

Annotations
@Override
invokeback to summary
public int invoke(long messageSeverity, long messageTypes, long callbackData, long userData)

Type of callback function invoked by the debug utils.

Parameters
messageSeverity:long

indicates the single bit value of XrDebugUtilsMessageSeverityFlagsEXT that triggered this callback.

messageTypes:long

indicates the XrDebugUtilsMessageTypeFlagsEXT specifying which types of event triggered this callback.

callbackData:long

contains all the callback related data in the XrDebugUtilsMessengerCallbackDataEXT structure.

userData:long

the user data provided when the XrDebugUtilsMessengerEXT was created.

Annotations
@NativeType:XrBool32