openxr-0.1: Bindings to the OpenXR API
Safe HaskellNone
LanguageHaskell2010

OpenXR.Extensions.XR_VALVE_analog_threshold

Description

Name

XR_VALVE_analog_threshold - instance extension

Specification

See XR_VALVE_analog_threshold in the main specification for complete information.

Registered Extension Number

80

Revision

1

Extension and Version Dependencies

  • Requires OpenXR 1.0

See Also

InteractionProfileAnalogThresholdVALVE

Document Notes

For more information, see the OpenXR Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Synopsis

Documentation

data InteractionProfileAnalogThresholdVALVE Source #

XrInteractionProfileAnalogThresholdVALVE - Interaction profile dpad binding

Member Descriptions

Description

Applications can chain an InteractionProfileAnalogThresholdVALVE struct on the next chain of any suggestInteractionProfileBindings call for each analog to boolean conversion for which it wants to set the threshold. If a threshold struct is present for a given conversion, the runtime must use those thresholds instead of applying its own whenever it is using the binding suggested by the application.

onThreshold and offThreshold permit allow the application to specify that it wants hysteresis to be applied to the threshold operation. If onThreshold is smaller than offThreshold, the runtime must return ERROR_VALIDATION_FAILURE.

onHaptic and offHaptic allow the application to specify that it wants automatic haptic feedback to be generated when the boolean output of the threshold operation changes from false to true or vice versa. If these fields are not NULL, the runtime must trigger a haptic output with the specified characteristics. If the device has multiple haptic outputs, the runtime should use the haptic output that is most appropriate for the specified input path.

If a suggested binding with action and binding is not in the binding list for this interaction profile, the runtime must return ERROR_PATH_UNSUPPORTED.

Valid Usage (Implicit)

See Also

Action, HapticBaseHeader, https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XrPath, StructureType

Constructors

InteractionProfileAnalogThresholdVALVE 

Fields

  • action :: Ptr Action_T

    action is the handle of an action in the suggested binding list.

  • binding :: Path

    binding is the input path used for the specified action in the suggested binding list.

  • onThreshold :: Float

    onThreshold is the value between 0.0 and 1.0 at which the runtime must consider the binding to be true. The binding must remain true until the input analog value falls below offThreshold.

  • offThreshold :: Float

    offThreshold is the value between 0.0 and 1.0 at which the runtime must consider the binding to be false if it was previous true.

  • onHaptic :: Maybe (SomeChild HapticBaseHeader)

    onHaptic is the haptic output that the runtime must trigger when the binding changes from false to true. If this field is NULL, the runtime must not trigger any haptic output on the threshold. This field can point to any supported sub-type of HapticBaseHeader.

  • offHaptic :: Maybe (SomeChild HapticBaseHeader)

    offHaptic is the haptic output that the runtime must trigger when the binding changes from true to false. If this field is NULL, the runtime must not trigger any haptic output on the threshold. This field can point to any supported sub-type of HapticBaseHeader.

type VALVE_ANALOG_THRESHOLD_EXTENSION_NAME = "XR_VALVE_analog_threshold" Source #

pattern VALVE_ANALOG_THRESHOLD_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #