Top Description Fields Constructors Methods
org.lwjgl.openxr

public Class EXTConformanceAutomation

extends Object
Class Inheritance
Imports
org.lwjgl.system.*, org.lwjgl.system.libffi.*

The XR_EXT_conformance_automation extension.

The XR_EXT_conformance_automation allows conformance test and runtime developers to provide hints to the underlying runtime as to what input the test is expecting. This enables runtime authors to automate the testing of their runtime conformance. This is useful for achieving rapidly iterative runtime development whilst maintaining conformance for runtime releases.

This extension provides the following capabilities:

Applications may call these functions at any time. The runtime must do its best to honor the request of applications calling these functions, however it does not guarantee that any state change will be reflected immediately, at all, or with the exact value that was requested. Applications are thus advised to wait for the state change to be observable and to not assume that the value they requested will be the value observed. If any of the functions of this extension are called, control over input must be removed from the physical hardware of the system.

Warning

This extension is not intended for use by non-conformance-test applications. A runtime may require a runtime-specified configuration such as a "developer mode" to be enabled before reporting support for this extension or providing a non-stub implementation of it.

Do not use this functionality in a non-conformance-test application!

Field Summary

Modifier and TypeField and Description
public static final String
public static final int
XR_EXT_conformance_automation_SPEC_VERSION

The extension specification version.

private static final FFICIF
private static final FFICIF

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static int
nxrSetInputDeviceLocationEXT(XrSession session, long topLevelPath, long inputSourcePath, XrSpace space, long pose)

Unsafe version of: SetInputDeviceLocationEXT

public static int
nxrSetInputDeviceStateVector2fEXT(XrSession session, long topLevelPath, long inputSourcePath, long state)

Unsafe version of: SetInputDeviceStateVector2fEXT

public static int
xrSetInputDeviceActiveEXT(XrSession
the XrSession to set the input device state in.
session
,
long
the path representing the interaction profile of the input device (e.g. pathname:/interaction_profiles/khr/simple_controller).
interactionProfile
,
long
the path representing the input device (e.g. pathname:/user/hand/left).
topLevelPath
,
boolean
the requested activation state of the input device.
isActive
)

Sets the active state of the input device.

public static int
xrSetInputDeviceLocationEXT(XrSession
the XrSession to set the input device state in.
session
,
long
the path representing the input device (e.g. pathname:/user/hand/left).
topLevelPath
,
long
the full path of the input component for which we wish to set the pose for (e.g. pathname:/user/hand/left/input/grip/pose).
inputSourcePath
,
XrSpace space, XrPosef
the requested pose state of the input device.
pose
)

Sets the effective location of a pose input source on the input device.

public static int
xrSetInputDeviceStateBoolEXT(XrSession
the XrSession to set the input device state in.
session
,
long
the path representing the input device (e.g. pathname:/user/hand/left).
topLevelPath
,
long
the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/select/click).
inputSourcePath
,
boolean
the requested boolean state of the input device.
state
)

Sets the state of a boolean input source on the input device.

public static int
xrSetInputDeviceStateFloatEXT(XrSession
the XrSession to set the input device state in.
session
,
long
the path representing the input device (e.g. pathname:/user/hand/left).
topLevelPath
,
long
the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/trigger/value).
inputSourcePath
,
float
the requested float state of the input device.
state
)

Sets the state of a float input source on the input device.

public static int
xrSetInputDeviceStateVector2fEXT(XrSession
the XrSession to set the input device state in.
session
,
long
the path representing the input device (e.g. pathname:/user/hand/left).
topLevelPath
,
long
the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/thumbstick).
inputSourcePath
,
XrVector2f
the requested two-dimensional state of the input device.
state
)

Sets the state of a 2D vector input source on the input device.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

XR_EXT_CONFORMANCE_AUTOMATION_EXTENSION_NAMEback to summary
public static final String XR_EXT_CONFORMANCE_AUTOMATION_EXTENSION_NAME

The extension name.

XR_EXT_conformance_automation_SPEC_VERSIONback to summary
public static final int XR_EXT_conformance_automation_SPEC_VERSION

The extension specification version.

xrSetInputDeviceLocationEXTCIFback to summary
private static final FFICIF xrSetInputDeviceLocationEXTCIF
xrSetInputDeviceStateVector2fEXTCIFback to summary
private static final FFICIF xrSetInputDeviceStateVector2fEXTCIF

Constructor Detail

EXTConformanceAutomationback to summary
protected EXTConformanceAutomation()

Method Detail

nxrSetInputDeviceLocationEXTback to summary
public static int nxrSetInputDeviceLocationEXT(XrSession session, long topLevelPath, long inputSourcePath, XrSpace space, long pose)

Unsafe version of: SetInputDeviceLocationEXT

nxrSetInputDeviceStateVector2fEXTback to summary
public static int nxrSetInputDeviceStateVector2fEXT(XrSession session, long topLevelPath, long inputSourcePath, long state)

Unsafe version of: SetInputDeviceStateVector2fEXT

xrSetInputDeviceActiveEXTback to summary
public static int xrSetInputDeviceActiveEXT(XrSession session, long interactionProfile, long topLevelPath, boolean isActive)

Sets the active state of the input device.

C Specification

XrResult xrSetInputDeviceActiveEXT(
    XrSession                                   session,
    XrPath                                      interactionProfile,
    XrPath                                      topLevelPath,
    XrBool32                                    isActive);
Valid Usage
  • session must be a valid session handle.
  • topLevelPath must be a valid top level path.
Valid Usage (Implicit)
Return Codes
On success, this command returns
On failure, this command returns
Parameters
session:XrSession

the XrSession to set the input device state in.

interactionProfile:long

the path representing the interaction profile of the input device (e.g. pathname:/interaction_profiles/khr/simple_controller).

topLevelPath:long

the path representing the input device (e.g. pathname:/user/hand/left).

isActive:boolean

the requested activation state of the input device.

Annotations
@NativeType:XrResult
xrSetInputDeviceLocationEXTback to summary
public static int xrSetInputDeviceLocationEXT(XrSession session, long topLevelPath, long inputSourcePath, XrSpace space, XrPosef pose)

Sets the effective location of a pose input source on the input device.

C Specification

XrResult xrSetInputDeviceLocationEXT(
    XrSession                                   session,
    XrPath                                      topLevelPath,
    XrPath                                      inputSourcePath,
    XrSpace                                     space,
    XrPosef                                     pose);
Valid Usage
  • session must be a valid session handle.
  • topLevelPath must be a valid top level path.
  • inputSourcePath must be a valid input source path.
Valid Usage (Implicit)
Return Codes
On success, this command returns
On failure, this command returns
See Also

XrPosef

Parameters
session:XrSession

the XrSession to set the input device state in.

topLevelPath:long

the path representing the input device (e.g. pathname:/user/hand/left).

inputSourcePath:long

the full path of the input component for which we wish to set the pose for (e.g. pathname:/user/hand/left/input/grip/pose).

pose:XrPosef

the requested pose state of the input device.

Annotations
@NativeType:XrResult
xrSetInputDeviceStateBoolEXTback to summary
public static int xrSetInputDeviceStateBoolEXT(XrSession session, long topLevelPath, long inputSourcePath, boolean state)

Sets the state of a boolean input source on the input device.

C Specification

XrResult xrSetInputDeviceStateBoolEXT(
    XrSession                                   session,
    XrPath                                      topLevelPath,
    XrPath                                      inputSourcePath,
    XrBool32                                    state);
Valid Usage
  • session must be a valid session handle.
  • topLevelPath must be a valid top level path.
  • inputSourcePath must be a valid input source path.
Valid Usage (Implicit)
Return Codes
On success, this command returns
On failure, this command returns
Parameters
session:XrSession

the XrSession to set the input device state in.

topLevelPath:long

the path representing the input device (e.g. pathname:/user/hand/left).

inputSourcePath:long

the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/select/click).

state:boolean

the requested boolean state of the input device.

Annotations
@NativeType:XrResult
xrSetInputDeviceStateFloatEXTback to summary
public static int xrSetInputDeviceStateFloatEXT(XrSession session, long topLevelPath, long inputSourcePath, float state)

Sets the state of a float input source on the input device.

C Specification

XrResult xrSetInputDeviceStateFloatEXT(
    XrSession                                   session,
    XrPath                                      topLevelPath,
    XrPath                                      inputSourcePath,
    float                                       state);
Valid Usage
  • session must be a valid session handle.
  • topLevelPath must be a valid top level path.
  • inputSourcePath must be a valid input source path.
Valid Usage (Implicit)
Return Codes
On success, this command returns
On failure, this command returns
Parameters
session:XrSession

the XrSession to set the input device state in.

topLevelPath:long

the path representing the input device (e.g. pathname:/user/hand/left).

inputSourcePath:long

the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/trigger/value).

state:float

the requested float state of the input device.

Annotations
@NativeType:XrResult
xrSetInputDeviceStateVector2fEXTback to summary
public static int xrSetInputDeviceStateVector2fEXT(XrSession session, long topLevelPath, long inputSourcePath, XrVector2f state)

Sets the state of a 2D vector input source on the input device.

C Specification

XrResult xrSetInputDeviceStateVector2fEXT(
    XrSession                                   session,
    XrPath                                      topLevelPath,
    XrPath                                      inputSourcePath,
    XrVector2f                                  state);
Valid Usage
  • session must be a valid session handle.
  • topLevelPath must be a valid top level path.
  • inputSourcePath must be a valid input source path.
Valid Usage (Implicit)
Return Codes
On success, this command returns
On failure, this command returns
See Also

XrVector2f

Parameters
session:XrSession

the XrSession to set the input device state in.

topLevelPath:long

the path representing the input device (e.g. pathname:/user/hand/left).

inputSourcePath:long

the full path of the input component for which we wish to set the state for (e.g. pathname:/user/hand/left/input/thumbstick).

state:XrVector2f

the requested two-dimensional state of the input device.

Annotations
@NativeType:XrResult