Class XrHandTrackingDataSourceStateEXT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
XrHandJointLocationsEXT to get hand tracking data source state.
Description
XrHandTrackingDataSourceStateEXT is a structure that an application can chain to XrHandJointLocationsEXT::next when calling LocateHandJointsEXT to retrieve the data source of the currently active hand tracking device.
When the returned isActive is XR_FALSE, it indicates the currently active hand tracking device does not support any of the requested data sources. In these cases, the runtime must also return no valid tracking locations for hand joints from this LocateHandJointsEXT function.
If the tracker was not created with XrHandTrackingDataSourceInfoEXT chained to XrHandTrackerCreateInfoEXT::next, then the runtime must return ERROR_VALIDATION_FAILURE, if XrHandTrackingDataSourceStateEXT is passed in the call to LocateHandJointsEXT.
If there is an active hand tracking device that is one of the specified XrHandTrackingDataSourceInfoEXT::requestedDataSources, the runtime must set isActive to TRUE. When the runtime sets isActive to TRUE, the runtime must set dataSource indicate the active data source. The runtime must return a dataSource that is a subset of the XrHandTrackingDataSourceInfoEXT::requestedDataSources when creating the corresponding hand tracker.
Valid Usage (Implicit)
- The
XR_EXT_hand_tracking_data_sourceextension must be enabled prior to usingXrHandTrackingDataSourceStateEXT typemust beTYPE_HAND_TRACKING_DATA_SOURCE_STATE_EXTnextmust beNULLor a valid pointer to the next structure in a structure chaindataSourcemust be a validXrHandTrackingDataSourceEXTvalue
See Also
XrHandJointLocationsEXT, LocateHandJointsEXT
Layout
struct XrHandTrackingDataSourceStateEXT {
XrStructureType type();
void * next();
XrBool32 isActive();
XrHandTrackingDataSourceEXT dataSource();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofXrHandTrackingDataSourceStateEXTstructs.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
ConstructorsConstructorDescriptionXrHandTrackingDataSourceStateEXT(ByteBuffer container) Creates aXrHandTrackingDataSourceStateEXTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newXrHandTrackingDataSourceStateEXTinstance allocated withmemCalloc.calloc(int capacity) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newXrHandTrackingDataSourceStateEXTinstance allocated withBufferUtils.create(int capacity) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newXrHandTrackingDataSourceStateEXTinstance for the specified memory address.create(long address, int capacity) Create aXrHandTrackingDataSourceStateEXT.Bufferinstance at the specified memory.static @Nullable XrHandTrackingDataSourceStateEXTcreateSafe(long address) static @Nullable XrHandTrackingDataSourceStateEXT.BuffercreateSafe(long address, int capacity) intindicating the data source that was used to generate the hand tracking joints.dataSource(int value) Sets the specified value to thedataSource()field.booleanisActive()indicating there is an active data sourceisActive(boolean value) Sets the specified value to theisActive()field.malloc()Returns a newXrHandTrackingDataSourceStateEXTinstance allocated withmemAlloc.malloc(int capacity) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXTinstance allocated on the specifiedMemoryStack.static intndataSource(long struct) Unsafe version ofdataSource().static voidndataSource(long struct, int value) Unsafe version ofdataSource.longnext()NULLor a pointer to the next structure in a structure chain.next(long value) Sets the specified value to thenext()field.static intnisActive(long struct) Unsafe version ofisActive().static voidnisActive(long struct, int value) Unsafe version ofisActive.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.set(int type, long next, boolean isActive, int dataSource) 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_HAND_TRACKING_DATA_SOURCE_STATE_EXTvalue 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. -
ISACTIVE
public static final int ISACTIVEThe struct member offsets. -
DATASOURCE
public static final int DATASOURCEThe struct member offsets.
-
-
Constructor Details
-
XrHandTrackingDataSourceStateEXT
Creates aXrHandTrackingDataSourceStateEXTinstance 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<XrHandTrackingDataSourceStateEXT>
-
type
public int type()theXrStructureTypeof this structure. -
next
public long next()NULLor a pointer to the next structure in a structure chain. -
isActive
public boolean isActive()indicating there is an active data source -
dataSource
public int dataSource()indicating the data source that was used to generate the hand tracking joints. -
type
Sets the specified value to thetype()field. -
type$Default
Sets theTYPE_HAND_TRACKING_DATA_SOURCE_STATE_EXTvalue to thetype()field. -
next
Sets the specified value to thenext()field. -
isActive
Sets the specified value to theisActive()field. -
dataSource
Sets the specified value to thedataSource()field. -
set
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 newXrHandTrackingDataSourceStateEXTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newXrHandTrackingDataSourceStateEXTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newXrHandTrackingDataSourceStateEXTinstance allocated withBufferUtils. -
create
Returns a newXrHandTrackingDataSourceStateEXTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aXrHandTrackingDataSourceStateEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable XrHandTrackingDataSourceStateEXT.Buffer createSafe(long address, int capacity) -
malloc
Returns a newXrHandTrackingDataSourceStateEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newXrHandTrackingDataSourceStateEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static XrHandTrackingDataSourceStateEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static XrHandTrackingDataSourceStateEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrHandTrackingDataSourceStateEXT.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(). -
nisActive
public static int nisActive(long struct) Unsafe version ofisActive(). -
ndataSource
public static int ndataSource(long struct) Unsafe version ofdataSource(). -
ntype
public static void ntype(long struct, int value) Unsafe version oftype. -
nnext
public static void nnext(long struct, long value) Unsafe version ofnext. -
nisActive
public static void nisActive(long struct, int value) Unsafe version ofisActive. -
ndataSource
public static void ndataSource(long struct, int value) Unsafe version ofdataSource.
-