The open source OpenXR runtime
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

st/oxr: Fill entire xrt_space_relation in oxr_xdev_get_pose_at, not just pose

In particular the relation_flags indicate whether the pose is valid or a fallback pose.

+4 -5
+1 -1
src/xrt/state_trackers/oxr/oxr_objects.h
··· 732 732 enum xrt_input_name name, 733 733 XrTime at_time, 734 734 uint64_t *out_pose_timestamp_ns, 735 - struct xrt_pose *out_pose); 735 + struct xrt_space_relation *out_relation); 736 736 737 737 /*! 738 738 * Returns the relation of the named input from the device, always ensures
+1 -1
src/xrt/state_trackers/oxr/oxr_space.c
··· 246 246 247 247 oxr_xdev_get_pose_at(log, sess->sys->inst, input->xdev, 248 248 input->input->name, at_time, &timestamp, 249 - &out_relation->pose); 249 + out_relation); 250 250 251 251 if (invert) { 252 252 math_pose_invert(&out_relation->pose, &out_relation->pose);
+2 -3
src/xrt/state_trackers/oxr/oxr_xdev.c
··· 139 139 enum xrt_input_name name, 140 140 XrTime at_time, 141 141 uint64_t *out_pose_timestamp_ns, 142 - struct xrt_pose *out_pose) 142 + struct xrt_space_relation *out_relation) 143 143 { 144 144 struct xrt_space_relation relation; 145 145 U_ZERO(&relation); ··· 147 147 oxr_xdev_get_relation_at(log, inst, xdev, name, at_time, 148 148 out_pose_timestamp_ns, &relation); 149 149 150 - out_pose->position = relation.pose.position; 151 - out_pose->orientation = relation.pose.orientation; 150 + *out_relation = relation; 152 151 }