Package org.lwjgl.openxr
Class XrDebugUtilsMessengerCreateInfoEXT
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<XrDebugUtilsMessengerCreateInfoEXT>
org.lwjgl.openxr.XrDebugUtilsMessengerCreateInfoEXT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class XrDebugUtilsMessengerCreateInfoEXT
extends org.lwjgl.system.Struct<XrDebugUtilsMessengerCreateInfoEXT>
implements org.lwjgl.system.NativeResource
Debug utils messenger create info.
Valid Usage
userCallbackmust be a valid PFN_xrDebugUtilsMessengerCallbackEXT
Valid Usage (Implicit)
- The
XR_EXT_debug_utilsextension must be enabled prior to usingXrDebugUtilsMessengerCreateInfoEXT typemust beTYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXTnextmust beNULLor a valid pointer to the next structure in a structure chainmessageSeveritiesmust be a valid combination ofXrDebugUtilsMessageSeverityFlagBitsEXTvaluesmessageSeveritiesmust not be 0messageTypesmust be a valid combination ofXrDebugUtilsMessageTypeFlagBitsEXTvaluesmessageTypesmust not be 0userCallbackmust be a validXrDebugUtilsMessengerCallbackEXTvalue
For each XrDebugUtilsMessengerEXT that is created the XrDebugUtilsMessengerCreateInfoEXT::messageSeverities and XrDebugUtilsMessengerCreateInfoEXT::messageTypes determine when that XrDebugUtilsMessengerCreateInfoEXT::userCallback is called. The process to determine if the user’s userCallback is triggered when an event occurs is as follows:
- The runtime will perform a bitwise AND of the event’s
XrDebugUtilsMessageSeverityFlagBitsEXTwith theXrDebugUtilsMessengerCreateInfoEXT::messageSeveritiesprovided during creation of theXrDebugUtilsMessengerEXTobject. - If this results in 0, the message is skipped.
- The runtime will perform bitwise AND of the event’s
XrDebugUtilsMessageTypeFlagBitsEXTwith theXrDebugUtilsMessengerCreateInfoEXT::messageTypesprovided during the creation of theXrDebugUtilsMessengerEXTobject. - If this results in 0, the message is skipped.
- If the message of the current event is not skipped, the callback will be called with the message.
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.).
See Also
XrDebugUtilsMessengerCallbackEXT, CreateDebugUtilsMessengerEXT
Layout
struct XrDebugUtilsMessengerCreateInfoEXT {
XrStructureType type();
void const * next();
XrDebugUtilsMessageSeverityFlagsEXT messageSeverities();
XrDebugUtilsMessageTypeFlagsEXT messageTypes();
PFN_xrDebugUtilsMessengerCallbackEXT userCallback();
void * userData();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofXrDebugUtilsMessengerCreateInfoEXTstructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionXrDebugUtilsMessengerCreateInfoEXT(ByteBuffer container) Creates aXrDebugUtilsMessengerCreateInfoEXTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withmemCalloc.calloc(int capacity) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withBufferUtils.create(int capacity) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance for the specified memory address.create(long address, int capacity) Create aXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance at the specified memory.static @Nullable XrDebugUtilsMessengerCreateInfoEXTcreateSafe(long address) static @Nullable XrDebugUtilsMessengerCreateInfoEXT.BuffercreateSafe(long address, int capacity) malloc()Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withmemAlloc.malloc(int capacity) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated on the specifiedMemoryStack.longa bitmask ofXrDebugUtilsMessageSeverityFlagBitsEXTspecifying which severity of event(s) that will cause this callback to be called.messageSeverities(long value) Sets the specified value to themessageSeverities()field.longa combination ofXrDebugUtilsMessageTypeFlagBitsEXTspecifying which type of event(s) will cause this callback to be called.messageTypes(long value) Sets the specified value to themessageTypes()field.longnext()NULLor a pointer to the next structure in a structure chain.next(long value) Sets the specified value to thenext()field.static longnmessageSeverities(long struct) Unsafe version ofmessageSeverities().static voidnmessageSeverities(long struct, long value) Unsafe version ofmessageSeverities.static longnmessageTypes(long struct) Unsafe version ofmessageTypes().static voidnmessageTypes(long struct, long value) Unsafe version ofmessageTypes.static longnnext(long struct) Unsafe version ofnext().static voidnnext(long struct, long value) Unsafe version ofnext.static intntype(long struct) Unsafe version oftype().static voidntype(long struct, int value) Unsafe version oftype.nuserCallback(long struct) Unsafe version ofuserCallback().static voidnuserCallback(long struct, XrDebugUtilsMessengerCallbackEXTI value) Unsafe version ofuserCallback.static longnuserData(long struct) Unsafe version ofuserData().static voidnuserData(long struct, long value) Unsafe version ofuserData.set(int type, long next, long messageSeverities, long messageTypes, XrDebugUtilsMessengerCallbackEXTI userCallback, long userData) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()inttype()theXrStructureTypeof this structure.type(int value) Sets the specified value to thetype()field.Sets theTYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXTvalue to thetype()field.the application defined callback function to call.Sets the specified value to theuserCallback()field.longuserData()arbitrary user data to be passed to the callback.userData(long value) Sets the specified value to theuserData()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
TYPE
public static final int TYPEThe struct member offsets. -
NEXT
public static final int NEXTThe struct member offsets. -
MESSAGESEVERITIES
public static final int MESSAGESEVERITIESThe struct member offsets. -
MESSAGETYPES
public static final int MESSAGETYPESThe struct member offsets. -
USERCALLBACK
public static final int USERCALLBACKThe struct member offsets. -
USERDATA
public static final int USERDATAThe struct member offsets.
-
-
Constructor Details
-
XrDebugUtilsMessengerCreateInfoEXT
Creates aXrDebugUtilsMessengerCreateInfoEXTinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<XrDebugUtilsMessengerCreateInfoEXT>
-
type
public int type()theXrStructureTypeof this structure. -
next
public long next()NULLor a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension. -
messageSeverities
public long messageSeverities()a bitmask ofXrDebugUtilsMessageSeverityFlagBitsEXTspecifying which severity of event(s) that will cause this callback to be called. -
messageTypes
public long messageTypes()a combination ofXrDebugUtilsMessageTypeFlagBitsEXTspecifying which type of event(s) will cause this callback to be called. -
userCallback
the application defined callback function to call. -
userData
public long userData()arbitrary user data to be passed to the callback. -
type
Sets the specified value to thetype()field. -
type$Default
Sets theTYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXTvalue to thetype()field. -
next
Sets the specified value to thenext()field. -
messageSeverities
Sets the specified value to themessageSeverities()field. -
messageTypes
Sets the specified value to themessageTypes()field. -
userCallback
Sets the specified value to theuserCallback()field. -
userData
Sets the specified value to theuserData()field. -
set
public XrDebugUtilsMessengerCreateInfoEXT set(int type, long next, long messageSeverities, long messageTypes, XrDebugUtilsMessengerCallbackEXTI userCallback, long userData) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated withBufferUtils. -
create
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable XrDebugUtilsMessengerCreateInfoEXT.Buffer createSafe(long address, int capacity) -
malloc
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newXrDebugUtilsMessengerCreateInfoEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static XrDebugUtilsMessengerCreateInfoEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static XrDebugUtilsMessengerCreateInfoEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrDebugUtilsMessengerCreateInfoEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
ntype
public static int ntype(long struct) Unsafe version oftype(). -
nnext
public static long nnext(long struct) Unsafe version ofnext(). -
nmessageSeverities
public static long nmessageSeverities(long struct) Unsafe version ofmessageSeverities(). -
nmessageTypes
public static long nmessageTypes(long struct) Unsafe version ofmessageTypes(). -
nuserCallback
Unsafe version ofuserCallback(). -
nuserData
public static long nuserData(long struct) Unsafe version ofuserData(). -
ntype
public static void ntype(long struct, int value) Unsafe version oftype. -
nnext
public static void nnext(long struct, long value) Unsafe version ofnext. -
nmessageSeverities
public static void nmessageSeverities(long struct, long value) Unsafe version ofmessageSeverities. -
nmessageTypes
public static void nmessageTypes(long struct, long value) Unsafe version ofmessageTypes. -
nuserCallback
Unsafe version ofuserCallback. -
nuserData
public static void nuserData(long struct, long value) Unsafe version ofuserData. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-