The open source OpenXR runtime
1{
2 "$schema": "../proto.schema.json",
3
4 "device_update_input": {
5 "in": [
6 {"name": "id", "type": "uint32_t"}
7 ]
8 },
9
10 "device_get_tracked_pose": {
11 "in": [
12 {"name": "id", "type": "uint32_t"},
13 {"name": "name", "type": "enum xrt_input_name"},
14 {"name": "at_timestamp", "type": "int64_t"}
15 ],
16 "out": [
17 {"name": "relation", "type": "struct xrt_space_relation"}
18 ]
19 },
20
21 "device_get_hand_tracking": {
22 "in": [
23 {"name": "id", "type": "uint32_t"},
24 {"name": "name", "type": "enum xrt_input_name"},
25 {"name": "at_timestamp", "type": "int64_t"}
26 ],
27 "out": [
28 {"name": "value", "type": "struct xrt_hand_joint_set"},
29 {"name": "timestamp", "type": "int64_t"}
30 ]
31 },
32
33 "device_get_view_poses": {
34 "varlen": true,
35 "in": [
36 {"name": "id", "type": "uint32_t"},
37 {"name": "fallback_eye_relation", "type": "struct xrt_vec3"},
38 {"name": "at_timestamp_ns", "type": "int64_t"},
39 {"name": "view_type", "type": "enum xrt_view_type"},
40 {"name": "view_count", "type": "uint32_t"}
41 ],
42 "out": [
43 {"name": "head_relation", "type": "struct xrt_space_relation"},
44 {"name": "view_count", "type": "uint32_t"}
45 ]
46 },
47
48 "device_get_view_poses_2": {
49 "in": [
50 {"name": "id", "type": "uint32_t"},
51 {"name": "fallback_eye_relation", "type": "struct xrt_vec3"},
52 {"name": "at_timestamp_ns", "type": "int64_t"},
53 {"name": "view_type", "type": "enum xrt_view_type"},
54 {"name": "view_count", "type": "uint32_t"}
55 ],
56 "out": [
57 {"name": "info", "type": "struct ipc_info_get_view_poses_2"}
58 ]
59 },
60
61 "device_compute_distortion": {
62 "in": [
63 {"name": "id", "type": "uint32_t"},
64 {"name": "view", "type": "uint32_t"},
65 {"name": "u", "type": "float"},
66 {"name": "v", "type": "float"}
67 ],
68 "out": [
69 {"name": "triplet", "type": "struct xrt_uv_triplet"}
70 ]
71 },
72
73 "device_begin_plane_detection_ext": {
74 "in": [
75 {"name": "id", "type": "uint32_t"},
76 {"name": "plane_detection_id", "type": "uint64_t"}
77 ],
78 "out": [
79 {"name": "out_plane_detection_id", "type": "uint64_t"}
80 ]
81 },
82
83 "device_destroy_plane_detection_ext": {
84 "in": [
85 {"name": "id", "type": "uint32_t"},
86 {"name": "plane_detection_id", "type": "uint64_t"}
87 ]
88 },
89
90 "device_get_plane_detection_state_ext": {
91 "in": [
92 {"name": "id", "type": "uint32_t"},
93 {"name": "plane_detection_id", "type": "uint64_t"}
94 ],
95 "out": [
96 {"name": "state", "type": "enum xrt_plane_detector_state_ext"}
97 ]
98 },
99
100 "device_get_plane_detections_ext": {
101 "varlen": true,
102 "in": [
103 {"name": "id", "type": "uint32_t"},
104 {"name": "plane_detection_id", "type": "uint64_t"}
105 ],
106 "out": [
107 {"name": "location_size", "type": "uint32_t"},
108 {"name": "polygon_size", "type": "uint32_t"},
109 {"name": "vertex_size", "type": "uint32_t"}
110 ]
111 },
112
113 "device_get_presence": {
114 "in": [
115 {"name": "id", "type": "uint32_t"}
116 ],
117 "out": [
118 {"name": "presence", "type": "bool"}
119 ]
120 },
121
122 "device_set_output": {
123 "in": [
124 {"name": "id", "type": "uint32_t"},
125 {"name": "name", "type": "enum xrt_output_name"},
126 {"name": "value", "type": "struct xrt_output_value"}
127 ]
128 },
129
130 "device_set_haptic_output": {
131 "varlen": true,
132 "in": [
133 {"name": "id", "type": "uint32_t"},
134 {"name": "name", "type": "enum xrt_output_name"},
135 {"name": "samples", "type": "struct ipc_pcm_haptic_buffer"}
136 ],
137 "out":[
138 {"name": "samples_consumed", "type": "uint32_t"}
139 ]
140 },
141
142 "device_get_output_limits": {
143 "in": [
144 {"name": "id", "type": "uint32_t"}
145 ],
146 "out":[
147 {"name": "limits", "type": "struct xrt_output_limits"}
148 ]
149 },
150
151 "device_get_visibility_mask": {
152 "varlen": true,
153 "in": [
154 {"name": "id", "type": "uint32_t"},
155 {"name": "type", "type": "enum xrt_visibility_mask_type"},
156 {"name": "view_index", "type": "uint32_t"}
157 ],
158 "out": [
159 {"name": "mask_size", "type": "uint32_t"}
160 ]
161 },
162
163 "device_is_form_factor_available": {
164 "in": [
165 {"name": "id", "type": "uint32_t"},
166 {"name": "form_factor", "type": "enum xrt_form_factor"}
167 ],
168 "out": [
169 {"name": "available", "type": "bool"}
170 ]
171 },
172
173 "device_get_face_tracking": {
174 "in": [
175 {"name": "id", "type": "uint32_t"},
176 {"name": "facial_expression_type", "type": "enum xrt_input_name"},
177 {"name": "at_timestamp_ns", "type": "int64_t"}
178 ],
179 "out": [
180 {"name": "value", "type": "struct xrt_facial_expression_set"}
181 ]
182 },
183
184 "device_device_get_face_calibration_state_android": {
185 "in": [
186 {"name": "id", "type": "uint32_t"}
187 ],
188 "out": [
189 {"name": "face_is_calibrated", "type": "bool"}
190 ]
191 },
192
193 "device_get_body_skeleton": {
194 "in": [
195 {"name": "id", "type": "uint32_t"},
196 {"name": "body_tracking_type", "type": "enum xrt_input_name"}
197 ],
198 "out": [
199 {"name": "value", "type": "struct xrt_body_skeleton"}
200 ]
201 },
202
203 "device_get_body_joints": {
204 "in": [
205 {"name": "id", "type": "uint32_t"},
206 {"name": "body_tracking_type", "type": "enum xrt_input_name"},
207 {"name": "desired_timestamp_ns", "type": "int64_t"}
208 ],
209 "out": [
210 {"name": "value", "type": "struct xrt_body_joint_set"}
211 ]
212 },
213
214 "device_reset_body_tracking_calibration_meta": {
215 "in": [
216 {"name": "id", "type": "uint32_t"}
217 ]
218 },
219
220 "device_set_body_tracking_calibration_override_meta": {
221 "in": [
222 {"name": "id", "type": "uint32_t"},
223 {"name": "new_body_height", "type": "float"}
224 ]
225 },
226
227 "device_get_battery_status": {
228 "in": [
229 {"name": "id", "type": "uint32_t"}
230 ],
231 "out": [
232 {"name": "present", "type": "bool"},
233 {"name": "charging", "type": "bool"},
234 {"name": "charge", "type": "float"}
235 ]
236 },
237
238 "device_get_brightness": {
239 "in": [
240 {"name": "id", "type": "uint32_t"}
241 ],
242 "out": [
243 {"name": "brightness", "type": "float"}
244 ]
245 },
246
247 "device_set_brightness": {
248 "in": [
249 {"name": "id", "type": "uint32_t"},
250 {"name": "brightness", "type": "float"},
251 {"name": "relative", "type": "bool"}
252 ]
253 }
254}