Package org.lwjgl.openxr
Class XrControllerModelNodePropertiesMSFT
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<XrControllerModelNodePropertiesMSFT>
org.lwjgl.openxr.XrControllerModelNodePropertiesMSFT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class XrControllerModelNodePropertiesMSFT
extends org.lwjgl.system.Struct<XrControllerModelNodePropertiesMSFT>
implements org.lwjgl.system.NativeResource
Describes the controller model node properties.
Description
The node can be located in the glTF node hierarchy by finding the node(s) with the matching node name and parent node name. If the parentNodeName is empty, the matching will be solely based on the nodeName.
If there are multiple nodes in the glTF file matches the condition above, the first matching node using depth-first traversal in the glTF scene should be animated and the rest should be ignored.
The runtime must not return any nodeName or parentNodeName that does not match any glTF nodes in the corresponding controller model.
Valid Usage (Implicit)
- The
XR_MSFT_controller_modelextension must be enabled prior to usingXrControllerModelNodePropertiesMSFT typemust beTYPE_CONTROLLER_MODEL_NODE_PROPERTIES_MSFTnextmust beNULLor a valid pointer to the next structure in a structure chainparentNodeNamemust be a null-terminated UTF-8 string whose length is less than or equal toMAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFTnodeNamemust be a null-terminated UTF-8 string whose length is less than or equal toMAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT
See Also
XrControllerModelPropertiesMSFT, GetControllerModelPropertiesMSFT, LoadControllerModelMSFT
Layout
struct XrControllerModelNodePropertiesMSFT {
XrStructureType type();
void * next();
char parentNodeName()[XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT];
char nodeName()[XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT];
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofXrControllerModelNodePropertiesMSFTstructs.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.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionXrControllerModelNodePropertiesMSFT(ByteBuffer container) Creates aXrControllerModelNodePropertiesMSFTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newXrControllerModelNodePropertiesMSFTinstance allocated withmemCalloc.calloc(int capacity) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newXrControllerModelNodePropertiesMSFTinstance allocated withBufferUtils.create(int capacity) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newXrControllerModelNodePropertiesMSFTinstance for the specified memory address.create(long address, int capacity) Create aXrControllerModelNodePropertiesMSFT.Bufferinstance at the specified memory.static @Nullable XrControllerModelNodePropertiesMSFTcreateSafe(long address) static @Nullable XrControllerModelNodePropertiesMSFT.BuffercreateSafe(long address, int capacity) malloc()Returns a newXrControllerModelNodePropertiesMSFTinstance allocated withmemAlloc.malloc(int capacity) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFTinstance allocated on the specifiedMemoryStack.longnext()NULLor a pointer to the next structure in a structure chain.next(long value) Sets the specified value to thenext()field.static longnnext(long struct) Unsafe version ofnext().static voidnnext(long struct, long value) Unsafe version ofnext.static ByteBuffernnodeName(long struct) Unsafe version ofnodeName().static voidnnodeName(long struct, ByteBuffer value) Unsafe version ofnodeName.static StringnnodeNameString(long struct) Unsafe version ofnodeNameString().nodeName()the name of this node in the provided glTF file.nodeName(ByteBuffer value) Copies the specified encoded string to thenodeName()field.the name of this node in the provided glTF file.static ByteBuffernparentNodeName(long struct) Unsafe version ofparentNodeName().static voidnparentNodeName(long struct, ByteBuffer value) Unsafe version ofparentNodeName.static StringnparentNodeNameString(long struct) Unsafe version ofparentNodeNameString().static intntype(long struct) Unsafe version oftype().static voidntype(long struct, int value) Unsafe version oftype.the name of the parent node in the provided glTF file.parentNodeName(ByteBuffer value) Copies the specified encoded string to theparentNodeName()field.the name of the parent node in the provided glTF file.set(int type, long next, ByteBuffer parentNodeName, ByteBuffer nodeName) 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_CONTROLLER_MODEL_NODE_PROPERTIES_MSFTvalue to thetype()field.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. -
PARENTNODENAME
public static final int PARENTNODENAMEThe struct member offsets. -
NODENAME
public static final int NODENAMEThe struct member offsets.
-
-
Constructor Details
-
XrControllerModelNodePropertiesMSFT
Creates aXrControllerModelNodePropertiesMSFTinstance 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<XrControllerModelNodePropertiesMSFT>
-
type
public int type()theXrStructureTypeof this structure. -
next
public long next()NULLor a pointer to the next structure in a structure chain. -
parentNodeName
the name of the parent node in the provided glTF file. The parent name may be empty if it should not be used to locate this node. -
parentNodeNameString
the name of the parent node in the provided glTF file. The parent name may be empty if it should not be used to locate this node. -
nodeName
the name of this node in the provided glTF file. -
nodeNameString
the name of this node in the provided glTF file. -
type
Sets the specified value to thetype()field. -
type$Default
Sets theTYPE_CONTROLLER_MODEL_NODE_PROPERTIES_MSFTvalue to thetype()field. -
next
Sets the specified value to thenext()field. -
parentNodeName
Copies the specified encoded string to theparentNodeName()field. -
nodeName
Copies the specified encoded string to thenodeName()field. -
set
public XrControllerModelNodePropertiesMSFT set(int type, long next, ByteBuffer parentNodeName, ByteBuffer nodeName) 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 newXrControllerModelNodePropertiesMSFTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newXrControllerModelNodePropertiesMSFTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newXrControllerModelNodePropertiesMSFTinstance allocated withBufferUtils. -
create
Returns a newXrControllerModelNodePropertiesMSFTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aXrControllerModelNodePropertiesMSFT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable XrControllerModelNodePropertiesMSFT.Buffer createSafe(long address, int capacity) -
malloc
Returns a newXrControllerModelNodePropertiesMSFTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newXrControllerModelNodePropertiesMSFTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static XrControllerModelNodePropertiesMSFT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static XrControllerModelNodePropertiesMSFT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrControllerModelNodePropertiesMSFT.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(). -
nparentNodeName
Unsafe version ofparentNodeName(). -
nparentNodeNameString
Unsafe version ofparentNodeNameString(). -
nnodeName
Unsafe version ofnodeName(). -
nnodeNameString
Unsafe version ofnodeNameString(). -
ntype
public static void ntype(long struct, int value) Unsafe version oftype. -
nnext
public static void nnext(long struct, long value) Unsafe version ofnext. -
nparentNodeName
Unsafe version ofparentNodeName. -
nnodeName
Unsafe version ofnodeName.
-