pub trait XRFrameMethods<D>{
// Required methods
fn Session(&self) -> Root<Dom<<D as DomTypes>::XRSession>>;
fn PredictedDisplayTime(&self) -> Finite<f64>;
fn GetViewerPose(
&self,
referenceSpace: &<D as DomTypes>::XRReferenceSpace,
_can_gc: CanGc,
) -> Result<Option<Root<Dom<<D as DomTypes>::XRViewerPose>>>, Error>;
fn GetPose(
&self,
space: &<D as DomTypes>::XRSpace,
baseSpace: &<D as DomTypes>::XRSpace,
_can_gc: CanGc,
) -> Result<Option<Root<Dom<<D as DomTypes>::XRPose>>>, Error>;
fn GetJointPose(
&self,
joint: &<D as DomTypes>::XRJointSpace,
baseSpace: &<D as DomTypes>::XRSpace,
_can_gc: CanGc,
) -> Result<Option<Root<Dom<<D as DomTypes>::XRJointPose>>>, Error>;
fn FillJointRadii(
&self,
jointSpaces: Vec<Root<Dom<<D as DomTypes>::XRJointSpace>>>,
radii: CustomAutoRooterGuard<'_, TypedArray<Float32, *mut JSObject>>,
) -> Result<bool, Error>;
fn FillPoses(
&self,
spaces: Vec<Root<Dom<<D as DomTypes>::XRSpace>>>,
baseSpace: &<D as DomTypes>::XRSpace,
transforms: CustomAutoRooterGuard<'_, TypedArray<Float32, *mut JSObject>>,
) -> Result<bool, Error>;
fn GetHitTestResults(
&self,
hitTestSource: &<D as DomTypes>::XRHitTestSource,
) -> Vec<Root<Dom<<D as DomTypes>::XRHitTestResult>>>;
}