/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ // skip-unless CARGO_FEATURE_WEBXR // https://immersive-web.github.io/webxr/#xrframe-interface [SecureContext, Exposed=Window, Pref="dom_webxr_enabled"] interface XRFrame { [SameObject] readonly attribute XRSession session; readonly attribute DOMHighResTimeStamp predictedDisplayTime; [Throws] XRViewerPose? getViewerPose(XRReferenceSpace referenceSpace); [Throws] XRPose? getPose(XRSpace space, XRSpace baseSpace); // WebXR Hand Input [Pref="dom_webxr_hands_enabled", Throws] XRJointPose? getJointPose(XRJointSpace joint, XRSpace baseSpace); [Pref="dom_webxr_hands_enabled", Throws] boolean fillJointRadii(sequence jointSpaces, Float32Array radii); [Pref="dom_webxr_hands_enabled", Throws] boolean fillPoses(sequence spaces, XRSpace baseSpace, Float32Array transforms); // WebXR Hit Test sequence getHitTestResults(XRHitTestSource hitTestSource); };