C Specification

The XrFutureEXT basetype is defined as:

// Provided by XR_EXT_future
XR_DEFINE_OPAQUE_64(XrFutureEXT)

Description

Asynchronous functions return an XrFutureEXT token as a placeholder for a value that will be returned later. An XrFutureEXT returned by a successful call to a function starting an asynchronous operation should normally start in the XR_FUTURE_STATE_PENDING_EXT state, but may skip directly to XR_FUTURE_STATE_READY_EXT if the result is immediately available.

The value XR_NULL_FUTURE_EXT, numerically equal to 0, is never a valid XrFutureEXT value.

Note that an XrFutureEXT token is neither a handle nor an atom type (such as XrPath). It belongs to a new category and is defined as an opaque 64-bit value. See https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#ext_future-scope for details on the scope and lifecycle of a future.

Style note: Functions that return an XrFutureEXT should be named with the suffix "Async", e.g. xrPerformLongTaskAsync. This function must not set the XrFutureEXT to XR_NULL_FUTURE_EXT when the function returns XR_SUCCESS.

See Also

Document Notes

For more information, see the OpenXR Specification

This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2025 The Khronos Group Inc.