pub trait FakeXRDeviceMethods {
// Required methods
fn SetViews(
&self,
views: Vec<FakeXRViewInit>,
secondaryViews: Option<Vec<FakeXRViewInit>>,
) -> Result<(), Error>;
fn Disconnect(&self, _can_gc: CanGc) -> Rc<Promise>;
fn SetViewerOrigin(
&self,
origin: &FakeXRRigidTransformInit,
emulatedPosition: bool,
) -> Result<(), Error>;
fn ClearViewerOrigin(&self);
fn SetFloorOrigin(
&self,
origin: &FakeXRRigidTransformInit,
) -> Result<(), Error>;
fn ClearFloorOrigin(&self);
fn SetBoundsGeometry(
&self,
boundsCoodinates: Vec<FakeXRBoundsPoint>,
) -> Result<(), Error>;
fn SimulateResetPose(&self);
fn SimulateVisibilityChange(&self, state: XRVisibilityState);
fn SimulateInputSourceConnection(
&self,
init: &FakeXRInputSourceInit,
) -> Result<Root<Dom<FakeXRInputController>>, Error>;
fn SetWorld(&self, world: &FakeXRWorldInit) -> Result<(), Error>;
fn ClearWorld(&self);
}