Top Description Inners Fields Constructors Methods
org.lwjgl.openxr

public Class XrControllerModelKeyStateMSFT

extends Struct<XrControllerModelKeyStateMSFT>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

The model key state for a controller.
Description

The modelKey value for the session represents a unique controller model that can be retrieved from LoadControllerModelMSFT function. Therefore, the application can use modelKey to cache the returned data from LoadControllerModelMSFT for the session.

A modelKey value of NULL_CONTROLLER_MODEL_KEY_MSFT, represents an invalid model key and indicates there is no controller model yet available. The application should keep calling GetControllerModelKeyMSFT because the model may become available at a later point.

The returned modelKey value depends on an active action binding to the corresponding subpathname:/grip/pose of the controller. Therefore, the application must have provided a valid action set containing an action for subpathname:/grip/pose, and have successfully completed an SyncActions call, in order to obtain a valid modelKey.

Valid Usage (Implicit)
See Also

GetControllerModelKeyMSFT

Layout


struct XrControllerModelKeyStateMSFT {
    XrStructureType type;
    void * next;
    XrControllerModelKeyMSFT modelKey;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
MODELKEY

The struct member offsets.

public static final int
NEXT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
TYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
XrControllerModelKeyStateMSFT(long address, ByteBuffer container)

public
XrControllerModelKeyStateMSFT(ByteBuffer container)

Creates a XrControllerModelKeyStateMSFT instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static XrControllerModelKeyStateMSFT
calloc()

Returns a new XrControllerModelKeyStateMSFT instance allocated with memCalloc.

public static XrControllerModelKeyStateMSFT.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with memCalloc.

public static XrControllerModelKeyStateMSFT
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new XrControllerModelKeyStateMSFT instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static XrControllerModelKeyStateMSFT.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

protected XrControllerModelKeyStateMSFT
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static XrControllerModelKeyStateMSFT
create()

Returns a new XrControllerModelKeyStateMSFT instance allocated with BufferUtils.

public static XrControllerModelKeyStateMSFT
create(long address)

Returns a new XrControllerModelKeyStateMSFT instance for the specified memory address.

public static XrControllerModelKeyStateMSFT.Buffer
create(int
the buffer capacity
capacity
)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with BufferUtils.

public static XrControllerModelKeyStateMSFT.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a XrControllerModelKeyStateMSFT.Buffer instance at the specified memory.

public static XrControllerModelKeyStateMSFT
createSafe(long address)

Like create, but returns null if address is NULL.

public static XrControllerModelKeyStateMSFT.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public static XrControllerModelKeyStateMSFT
malloc()

Returns a new XrControllerModelKeyStateMSFT instance allocated with memAlloc.

public static XrControllerModelKeyStateMSFT.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with memAlloc.

public static XrControllerModelKeyStateMSFT
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new XrControllerModelKeyStateMSFT instance allocated on the specified MemoryStack.

public static XrControllerModelKeyStateMSFT.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated on the specified MemoryStack.

public long
modelKey()

the model key corresponding to the controller render model being queried.

public XrControllerModelKeyStateMSFT
modelKey(long value)

Sets the specified value to the modelKey field.

public long
next()

NULL or a pointer to the next structure in a structure chain.

public XrControllerModelKeyStateMSFT
next(long value)

Sets the specified value to the next field.

public static long
nmodelKey(long struct)

Unsafe version of modelKey.

public static void
nmodelKey(long struct, long value)

Unsafe version of modelKey.

public static long
nnext(long struct)

Unsafe version of next.

public static void
nnext(long struct, long value)

Unsafe version of next.

public static int
ntype(long struct)

Unsafe version of type.

public static void
ntype(long struct, int value)

Unsafe version of type.

public XrControllerModelKeyStateMSFT
set(int type, long next, long modelKey)

Initializes this struct with the specified values.

public XrControllerModelKeyStateMSFT

Returns:

this struct
set
(XrControllerModelKeyStateMSFT
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
type()

the XrStructureType of this structure.

public XrControllerModelKeyStateMSFT
type(int value)

Sets the specified value to the type field.

public XrControllerModelKeyStateMSFT
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

MODELKEYback to summary
public static final int MODELKEY

The struct member offsets.

NEXTback to summary
public static final int NEXT

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

TYPEback to summary
public static final int TYPE

The struct member offsets.

Constructor Detail

XrControllerModelKeyStateMSFTback to summary
protected XrControllerModelKeyStateMSFT(long address, ByteBuffer container)
XrControllerModelKeyStateMSFTback to summary
public XrControllerModelKeyStateMSFT(ByteBuffer container)

Creates a XrControllerModelKeyStateMSFT instance at the current position of the specified ByteBuffer container. 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 Detail

callocback to summary
public static XrControllerModelKeyStateMSFT calloc()

Returns a new XrControllerModelKeyStateMSFT instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static XrControllerModelKeyStateMSFT.Buffer calloc(int capacity)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with memCalloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

callocback to summary
public static XrControllerModelKeyStateMSFT calloc(MemoryStack stack)

Returns a new XrControllerModelKeyStateMSFT instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
stack:MemoryStack

the stack from which to allocate

callocback to summary
public static XrControllerModelKeyStateMSFT.Buffer calloc(int capacity, MemoryStack stack)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

createback to summary
protected XrControllerModelKeyStateMSFT create(long address, ByteBuffer container)

Implements abstract org.lwjgl.system.Struct.create.

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static XrControllerModelKeyStateMSFT create()

Returns a new XrControllerModelKeyStateMSFT instance allocated with BufferUtils.

createback to summary
public static XrControllerModelKeyStateMSFT create(long address)

Returns a new XrControllerModelKeyStateMSFT instance for the specified memory address.

createback to summary
public static XrControllerModelKeyStateMSFT.Buffer create(int capacity)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

createback to summary
public static XrControllerModelKeyStateMSFT.Buffer create(long address, int capacity)

Create a XrControllerModelKeyStateMSFT.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static XrControllerModelKeyStateMSFT createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
createSafeback to summary
public static XrControllerModelKeyStateMSFT.Buffer createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

Annotations
@Nullable
mallocback to summary
public static XrControllerModelKeyStateMSFT malloc()

Returns a new XrControllerModelKeyStateMSFT instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static XrControllerModelKeyStateMSFT.Buffer malloc(int capacity)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated with memAlloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static XrControllerModelKeyStateMSFT malloc(MemoryStack stack)

Returns a new XrControllerModelKeyStateMSFT instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocback to summary
public static XrControllerModelKeyStateMSFT.Buffer malloc(int capacity, MemoryStack stack)

Returns a new XrControllerModelKeyStateMSFT.Buffer instance allocated on the specified MemoryStack.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

modelKeyback to summary
public long modelKey()

the model key corresponding to the controller render model being queried.

Annotations
@NativeType:XrControllerModelKeyMSFT
modelKeyback to summary
public XrControllerModelKeyStateMSFT modelKey(long value)

Sets the specified value to the modelKey field.

nextback to summary
public long next()

NULL or a pointer to the next structure in a structure chain.

Annotations
@NativeType:void *
nextback to summary
public XrControllerModelKeyStateMSFT next(long value)

Sets the specified value to the next field.

nmodelKeyback to summary
public static long nmodelKey(long struct)

Unsafe version of modelKey.

nmodelKeyback to summary
public static void nmodelKey(long struct, long value)

Unsafe version of modelKey.

nnextback to summary
public static long nnext(long struct)

Unsafe version of next.

nnextback to summary
public static void nnext(long struct, long value)

Unsafe version of next.

ntypeback to summary
public static int ntype(long struct)

Unsafe version of type.

ntypeback to summary
public static void ntype(long struct, int value)

Unsafe version of type.

setback to summary
public XrControllerModelKeyStateMSFT set(int type, long next, long modelKey)

Initializes this struct with the specified values.

setback to summary
public XrControllerModelKeyStateMSFT set(XrControllerModelKeyStateMSFT src)

Copies the specified struct data to this struct.

Parameters
src:XrControllerModelKeyStateMSFT

the source struct

Returns:XrControllerModelKeyStateMSFT

this struct

sizeofback to summary
public int sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
typeback to summary
public int type()

the XrStructureType of this structure.

Annotations
@NativeType:XrStructureType
typeback to summary
public XrControllerModelKeyStateMSFT type(int value)

Sets the specified value to the type field.

type$Defaultback to summary
public XrControllerModelKeyStateMSFT type$Default()

Sets the TYPE_CONTROLLER_MODEL_KEY_STATE_MSFT value to the type field.

org.lwjgl.openxr back to summary

public Class XrControllerModelKeyStateMSFT.Buffer

extends StructBuffer<XrControllerModelKeyStateMSFT, XrControllerModelKeyStateMSFT.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable

An array of XrControllerModelKeyStateMSFT structs.

Field Summary

Modifier and TypeField and Description
private static final XrControllerModelKeyStateMSFT

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new XrControllerModelKeyStateMSFT.Buffer instance backed by the specified container.

public
Buffer(long address, int cap)

pack-priv
Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Summary

Modifier and TypeMethod and Description
protected XrControllerModelKeyStateMSFT
public long

Returns:

the value of the XrControllerModelKeyStateMSFT#modelKey field.
modelKey
()

public XrControllerModelKeyStateMSFT.Buffer
modelKey(long value)

Sets the specified value to the XrControllerModelKeyStateMSFT#modelKey field.

public long

Returns:

the value of the XrControllerModelKeyStateMSFT#next field.
next
()

public XrControllerModelKeyStateMSFT.Buffer
next(long value)

Sets the specified value to the XrControllerModelKeyStateMSFT#next field.

protected XrControllerModelKeyStateMSFT.Buffer
public int

Returns:

the value of the XrControllerModelKeyStateMSFT#type field.
type
()

public XrControllerModelKeyStateMSFT.Buffer
type(int value)

Sets the specified value to the XrControllerModelKeyStateMSFT#type field.

public XrControllerModelKeyStateMSFT.Buffer
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final XrControllerModelKeyStateMSFT ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new XrControllerModelKeyStateMSFT.Buffer instance backed by the specified container.

Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided by XrControllerModelKeyStateMSFT#SIZEOF, and its mark will be undefined.

The created buffer instance holds a strong reference to the container object.

Bufferback to summary
public Buffer(long address, int cap)
Bufferback to summary
pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Detail

getElementFactoryback to summary
protected XrControllerModelKeyStateMSFT getElementFactory()

Implements abstract org.lwjgl.system.StructBuffer.getElementFactory.

Annotations
@Override
modelKeyback to summary
public long modelKey()
Returns:long

the value of the XrControllerModelKeyStateMSFT#modelKey field.

Annotations
@NativeType:XrControllerModelKeyMSFT
modelKeyback to summary
public XrControllerModelKeyStateMSFT.Buffer modelKey(long value)

Sets the specified value to the XrControllerModelKeyStateMSFT#modelKey field.

nextback to summary
public long next()
Returns:long

the value of the XrControllerModelKeyStateMSFT#next field.

Annotations
@NativeType:void *
nextback to summary
public XrControllerModelKeyStateMSFT.Buffer next(long value)

Sets the specified value to the XrControllerModelKeyStateMSFT#next field.

selfback to summary
protected XrControllerModelKeyStateMSFT.Buffer self()

Implements abstract org.lwjgl.system.CustomBuffer.self.

Annotations
@Override
typeback to summary
public int type()
Returns:int

the value of the XrControllerModelKeyStateMSFT#type field.

Annotations
@NativeType:XrStructureType
typeback to summary
public XrControllerModelKeyStateMSFT.Buffer type(int value)

Sets the specified value to the XrControllerModelKeyStateMSFT#type field.

type$Defaultback to summary
public XrControllerModelKeyStateMSFT.Buffer type$Default()

Sets the TYPE_CONTROLLER_MODEL_KEY_STATE_MSFT value to the XrControllerModelKeyStateMSFT#type field.