···8585 u_device_free(&hmd->base);
8686}
87878888-static void
8888+static xrt_result_t
8989sample_hmd_update_inputs(struct xrt_device *xdev)
9090{
9191 /*
···9393 * put code to update the attached inputs fields. If not you can use
9494 * the u_device_noop_update_inputs helper to make it a no-op.
9595 */
9696+ return XRT_SUCCESS;
9697}
97989899static void
+5-2
src/xrt/drivers/simulated/simulated_controller.c
···9393 u_device_free(&sd->base);
9494}
95959696-static void
9696+static xrt_result_t
9797simulated_device_update_inputs(struct xrt_device *xdev)
9898{
9999 struct simulated_device *sd = simulated_device(xdev);
100100101101 uint64_t now = os_monotonic_get_ns();
102102103103+ // TODO refactor those loops into one
103104 if (!sd->active) {
104105 for (uint32_t i = 0; i < xdev->input_count; i++) {
105106 xdev->inputs[i].active = false;
106107 xdev->inputs[i].timestamp = now;
107108 U_ZERO(&xdev->inputs[i].value);
108109 }
109109- return;
110110+ return XRT_SUCCESS;
110111 }
111112112113 for (uint32_t i = 0; i < xdev->input_count; i++) {
113114 xdev->inputs[i].active = true;
114115 xdev->inputs[i].timestamp = now;
115116 }
117117+118118+ return XRT_SUCCESS;
116119}
117120118121static void