The open source OpenXR runtime
at prediction-2 677 lines 14 kB view raw
1{ 2 "$schema": "./proto.schema.json", 3 4 "instance_get_shm_fd": { 5 "out_handles": {"type": "xrt_shmem_handle_t"} 6 }, 7 8 "instance_describe_client": { 9 "in": [ 10 {"name": "desc", "type": "struct ipc_client_description"} 11 ] 12 }, 13 14 "instance_is_system_available": { 15 "out": [ 16 {"name": "available", "type": "bool"} 17 ] 18 }, 19 20 "system_get_properties": { 21 "out": [ 22 {"name": "properties", "type": "struct xrt_system_properties"} 23 ] 24 }, 25 26 "system_get_client_info": { 27 "in": [ 28 {"name": "id", "type": "uint32_t"} 29 ], 30 "out": [ 31 {"name": "ias", "type": "struct ipc_app_state"} 32 ] 33 }, 34 35 "system_get_clients": { 36 "out": [ 37 {"name": "clients", "type": "struct ipc_client_list"} 38 ] 39 }, 40 41 "system_set_primary_client": { 42 "in": [ 43 {"name": "id", "type": "uint32_t"} 44 ] 45 }, 46 47 "system_set_focused_client": { 48 "in": [ 49 {"name": "id", "type": "uint32_t"} 50 ] 51 }, 52 53 "system_toggle_io_client": { 54 "in": [ 55 {"name": "id", "type": "uint32_t"} 56 ] 57 }, 58 59 "system_toggle_io_device": { 60 "in": [ 61 {"name": "id", "type": "uint32_t"} 62 ] 63 }, 64 65 "system_devices_get_roles": { 66 "out": [ 67 {"name": "system_roles", "type": "struct xrt_system_roles"} 68 ] 69 }, 70 71 "system_devices_begin_feature": { 72 "in": [ 73 {"name": "type", "type": "enum xrt_device_feature_type"} 74 ] 75 }, 76 77 "system_devices_end_feature": { 78 "in": [ 79 {"name": "type", "type": "enum xrt_device_feature_type"} 80 ] 81 }, 82 83 "system_compositor_get_info": { 84 "out": [ 85 {"name": "info", "type": "struct xrt_system_compositor_info"} 86 ] 87 }, 88 89 "session_create": { 90 "in": [ 91 {"name": "xsi", "type": "struct xrt_session_info"}, 92 {"name": "create_native_compositor", "type": "bool"} 93 ] 94 }, 95 96 "session_poll_events": { 97 "out": [ 98 {"name": "event", "type": "union xrt_session_event"} 99 ] 100 }, 101 102 "session_begin": {}, 103 104 "session_end": {}, 105 106 "session_destroy": {}, 107 108 "space_create_semantic_ids": { 109 "out": [ 110 {"name": "root_id", "type": "uint32_t"}, 111 {"name": "view_id", "type": "uint32_t"}, 112 {"name": "local_id", "type": "uint32_t"}, 113 {"name": "local_floor_id", "type": "uint32_t"}, 114 {"name": "stage_id", "type": "uint32_t"}, 115 {"name": "unbounded_id", "type": "uint32_t"} 116 ] 117 }, 118 119 "space_create_offset": { 120 "in": [ 121 {"name": "parent_id", "type": "uint32_t"}, 122 {"name": "offset", "type": "struct xrt_pose"} 123 ], 124 "out": [ 125 {"name": "space_id", "type": "uint32_t"} 126 ] 127 }, 128 129 "space_create_pose": { 130 "in": [ 131 {"name": "xdev_id", "type": "uint32_t"}, 132 {"name": "name", "type": "enum xrt_input_name"} 133 ], 134 "out": [ 135 {"name": "space_id", "type": "uint32_t"} 136 ] 137 }, 138 139 "space_locate_space": { 140 "in": [ 141 {"name": "base_space_id", "type": "uint32_t"}, 142 {"name": "base_offset", "type": "struct xrt_pose"}, 143 {"name": "at_timestamp", "type": "int64_t"}, 144 {"name": "space_id", "type": "uint32_t"}, 145 {"name": "offset", "type": "struct xrt_pose"} 146 ], 147 "out": [ 148 {"name": "relation", "type": "struct xrt_space_relation"} 149 ] 150 }, 151 152 "space_locate_spaces": { 153 "varlen": true, 154 "in": [ 155 {"name": "base_space_id", "type": "uint32_t"}, 156 {"name": "base_offset", "type": "struct xrt_pose"}, 157 {"name": "space_count", "type": "uint32_t"}, 158 {"name": "at_timestamp", "type": "int64_t"} 159 ] 160 }, 161 162 "space_locate_device": { 163 "in": [ 164 {"name": "base_space_id", "type": "uint32_t"}, 165 {"name": "base_offset", "type": "struct xrt_pose"}, 166 {"name": "at_timestamp", "type": "int64_t"}, 167 {"name": "xdev_id", "type": "uint32_t"} 168 ], 169 "out": [ 170 {"name": "relation", "type": "struct xrt_space_relation"} 171 ] 172 }, 173 174 "space_destroy": { 175 "in": [ 176 {"name": "space_id", "type": "uint32_t"} 177 ] 178 }, 179 180 "space_mark_ref_space_in_use": { 181 "in": [ 182 {"name": "type", "type": "enum xrt_reference_space_type"} 183 ] 184 }, 185 186 "space_unmark_ref_space_in_use": { 187 "in": [ 188 {"name": "type", "type": "enum xrt_reference_space_type"} 189 ] 190 }, 191 192 "space_recenter_local_spaces": { 193 }, 194 195 "space_get_tracking_origin_offset": { 196 "in": [ 197 {"name": "origin_id", "type": "uint32_t"} 198 ], 199 "out": [ 200 {"name": "offset", "type": "struct xrt_pose"} 201 ] 202 }, 203 204 "space_set_tracking_origin_offset": { 205 "in": [ 206 {"name": "origin_id", "type": "uint32_t"}, 207 {"name": "offset", "type": "struct xrt_pose"} 208 ] 209 }, 210 211 "space_get_reference_space_offset": { 212 "in": [ 213 {"name": "type", "type": "enum xrt_reference_space_type"} 214 ], 215 "out": [ 216 {"name": "offset", "type": "struct xrt_pose"} 217 ] 218 }, 219 220 "space_set_reference_space_offset": { 221 "in": [ 222 {"name": "type", "type": "enum xrt_reference_space_type"}, 223 {"name": "offset", "type": "struct xrt_pose"} 224 ] 225 }, 226 227 "compositor_get_info": { 228 "out": [ 229 {"name": "info", "type": "struct xrt_compositor_info"} 230 ] 231 }, 232 233 "compositor_predict_frame": { 234 "out": [ 235 {"name": "frame_id", "type": "int64_t"}, 236 {"name": "wake_up_time", "type": "int64_t"}, 237 {"name": "predicted_display_time", "type": "int64_t"}, 238 {"name": "predicted_display_period", "type": "int64_t"} 239 ] 240 }, 241 242 "compositor_wait_woke": { 243 "in": [ 244 {"name": "frame_id", "type": "int64_t"} 245 ] 246 }, 247 248 "compositor_begin_frame": { 249 "in": [ 250 {"name": "frame_id", "type": "int64_t"} 251 ] 252 }, 253 254 "compositor_discard_frame": { 255 "in": [ 256 {"name": "frame_id", "type": "int64_t"} 257 ] 258 }, 259 260 "compositor_layer_sync": { 261 "in": [ 262 {"name": "slot_id", "type": "uint32_t"} 263 ], 264 "in_handles": {"type": "xrt_graphics_sync_handle_t"}, 265 "out": [ 266 {"name": "free_slot_id", "type": "uint32_t"} 267 ] 268 }, 269 270 "compositor_layer_sync_with_semaphore": { 271 "in": [ 272 {"name": "slot_id", "type": "uint32_t"}, 273 {"name": "semaphore_id", "type": "uint32_t"}, 274 {"name": "semaphore_value", "type": "uint64_t"} 275 ], 276 "out": [ 277 {"name": "free_slot_id", "type": "uint32_t"} 278 ] 279 }, 280 281 "compositor_set_performance_level": { 282 "in": [ 283 {"name": "domain", "type": "enum xrt_perf_domain"}, 284 {"name": "level", "type": "enum xrt_perf_set_level"} 285 ] 286 }, 287 288 "compositor_set_thread_hint": { 289 "in": [ 290 {"name": "hint", "type": "enum xrt_thread_hint"}, 291 {"name": "thread_id", "type": "uint32_t"} 292 ] 293 }, 294 295 "compositor_get_display_refresh_rate": { 296 "out": [ 297 {"name": "out_display_refresh_rate_hz", "type": "float"} 298 ] 299 }, 300 301 "compositor_request_display_refresh_rate": { 302 "in": [ 303 {"name": "display_refresh_rate_hz", "type": "float"} 304 ] 305 }, 306 307 "compositor_get_reference_bounds_rect": { 308 "in": [ 309 {"name": "reference_space_type", "type": "enum xrt_reference_space_type"} 310 ], 311 "out": [ 312 {"name": "bounds", "type": "struct xrt_vec2"} 313 ] 314 }, 315 316 "swapchain_get_properties": { 317 "in": [ 318 {"name": "info", "type": "struct xrt_swapchain_create_info"} 319 ], 320 "out": [ 321 {"name": "xsccp", "type": "struct xrt_swapchain_create_properties"} 322 ] 323 }, 324 325 "swapchain_create": { 326 "in": [ 327 {"name": "info", "type": "struct xrt_swapchain_create_info"} 328 ], 329 "out": [ 330 {"name": "id", "type": "uint32_t"}, 331 {"name": "image_count", "type": "uint32_t"}, 332 {"name": "size", "type": "uint64_t"}, 333 {"name": "use_dedicated_allocation", "type": "bool"} 334 ], 335 "out_handles": {"type": "xrt_graphics_buffer_handle_t"} 336 }, 337 338 "compositor_create_passthrough": { 339 "in": [ 340 {"name": "info", "type": "struct xrt_passthrough_create_info"} 341 ] 342 }, 343 344 "compositor_create_passthrough_layer": { 345 "in": [ 346 {"name": "info", "type": "struct xrt_passthrough_layer_create_info"} 347 ] 348 }, 349 350 "compositor_destroy_passthrough": {}, 351 352 "swapchain_import": { 353 "in": [ 354 {"name": "info", "type": "struct xrt_swapchain_create_info"}, 355 {"name": "args", "type": "struct ipc_arg_swapchain_from_native"} 356 ], 357 "out": [ 358 {"name": "id", "type": "uint32_t"} 359 ], 360 "in_handles": {"type": "xrt_graphics_buffer_handle_t"} 361 }, 362 363 "swapchain_wait_image": { 364 "in": [ 365 {"name": "id", "type": "uint32_t"}, 366 {"name": "timeout_ns", "type": "int64_t"}, 367 {"name": "index", "type": "uint32_t"} 368 ] 369 }, 370 371 "swapchain_acquire_image": { 372 "in": [ 373 {"name": "id", "type": "uint32_t"} 374 ], 375 "out": [ 376 {"name": "index", "type": "uint32_t"} 377 ] 378 }, 379 380 "swapchain_release_image": { 381 "in": [ 382 {"name": "id", "type": "uint32_t"}, 383 {"name": "index", "type": "uint32_t"} 384 ] 385 }, 386 387 "swapchain_destroy": { 388 "in": [ 389 {"name": "id", "type": "uint32_t"} 390 ] 391 }, 392 393 "compositor_semaphore_create": { 394 "out": [ 395 {"name": "id", "type": "uint32_t"} 396 ], 397 "out_handles": {"type": "xrt_graphics_sync_handle_t"} 398 }, 399 400 "compositor_semaphore_destroy": { 401 "in": [ 402 {"name": "id", "type": "uint32_t"} 403 ] 404 }, 405 406 "device_update_input": { 407 "in": [ 408 {"name": "id", "type": "uint32_t"} 409 ] 410 }, 411 412 "device_get_tracked_pose": { 413 "in": [ 414 {"name": "id", "type": "uint32_t"}, 415 {"name": "name", "type": "enum xrt_input_name"}, 416 {"name": "at_timestamp", "type": "int64_t"} 417 ], 418 "out": [ 419 {"name": "relation", "type": "struct xrt_space_relation"} 420 ] 421 }, 422 423 "device_get_hand_tracking": { 424 "in": [ 425 {"name": "id", "type": "uint32_t"}, 426 {"name": "name", "type": "enum xrt_input_name"}, 427 {"name": "at_timestamp", "type": "int64_t"} 428 ], 429 "out": [ 430 {"name": "value", "type": "struct xrt_hand_joint_set"}, 431 {"name": "timestamp", "type": "int64_t"} 432 ] 433 }, 434 435 "device_get_view_poses": { 436 "varlen": true, 437 "in": [ 438 {"name": "id", "type": "uint32_t"}, 439 {"name": "fallback_eye_relation", "type": "struct xrt_vec3"}, 440 {"name": "at_timestamp_ns", "type": "int64_t"}, 441 {"name": "view_type", "type": "enum xrt_view_type"}, 442 {"name": "view_count", "type": "uint32_t"} 443 ], 444 "out": [ 445 {"name": "head_relation", "type": "struct xrt_space_relation"}, 446 {"name": "view_count", "type": "uint32_t"} 447 ] 448 }, 449 450 "device_get_view_poses_2": { 451 "in": [ 452 {"name": "id", "type": "uint32_t"}, 453 {"name": "fallback_eye_relation", "type": "struct xrt_vec3"}, 454 {"name": "at_timestamp_ns", "type": "int64_t"}, 455 {"name": "view_type", "type": "enum xrt_view_type"}, 456 {"name": "view_count", "type": "uint32_t"} 457 ], 458 "out": [ 459 {"name": "info", "type": "struct ipc_info_get_view_poses_2"} 460 ] 461 }, 462 463 "device_compute_distortion": { 464 "in": [ 465 {"name": "id", "type": "uint32_t"}, 466 {"name": "view", "type": "uint32_t"}, 467 {"name": "u", "type": "float"}, 468 {"name": "v", "type": "float"} 469 ], 470 "out": [ 471 {"name": "triplet", "type": "struct xrt_uv_triplet"} 472 ] 473 }, 474 475 "device_begin_plane_detection_ext": { 476 "in": [ 477 {"name": "id", "type": "uint32_t"}, 478 {"name": "plane_detection_id", "type": "uint64_t"} 479 ], 480 "out": [ 481 {"name": "out_plane_detection_id", "type": "uint64_t"} 482 ] 483 }, 484 485 "device_destroy_plane_detection_ext": { 486 "in": [ 487 {"name": "id", "type": "uint32_t"}, 488 {"name": "plane_detection_id", "type": "uint64_t"} 489 ] 490 }, 491 492 "device_get_plane_detection_state_ext": { 493 "in": [ 494 {"name": "id", "type": "uint32_t"}, 495 {"name": "plane_detection_id", "type": "uint64_t"} 496 ], 497 "out": [ 498 {"name": "state", "type": "enum xrt_plane_detector_state_ext"} 499 ] 500 }, 501 502 "device_get_plane_detections_ext": { 503 "varlen": true, 504 "in": [ 505 {"name": "id", "type": "uint32_t"}, 506 {"name": "plane_detection_id", "type": "uint64_t"} 507 ], 508 "out": [ 509 {"name": "location_size", "type": "uint32_t"}, 510 {"name": "polygon_size", "type": "uint32_t"}, 511 {"name": "vertex_size", "type": "uint32_t"} 512 ] 513 }, 514 515 "device_get_presence": { 516 "in": [ 517 {"name": "id", "type": "uint32_t"} 518 ], 519 "out": [ 520 {"name": "presence", "type": "bool"} 521 ] 522 }, 523 524 "device_set_output": { 525 "in": [ 526 {"name": "id", "type": "uint32_t"}, 527 {"name": "name", "type": "enum xrt_output_name"}, 528 {"name": "value", "type": "struct xrt_output_value"} 529 ] 530 }, 531 532 "device_set_haptic_output": { 533 "varlen": true, 534 "in": [ 535 {"name": "id", "type": "uint32_t"}, 536 {"name": "name", "type": "enum xrt_output_name"}, 537 {"name": "samples", "type": "struct ipc_pcm_haptic_buffer"} 538 ], 539 "out":[ 540 {"name": "samples_consumed", "type": "uint32_t"} 541 ] 542 }, 543 544 "device_get_output_limits": { 545 "in": [ 546 {"name": "id", "type": "uint32_t"} 547 ], 548 "out":[ 549 {"name": "limits", "type": "struct xrt_output_limits"} 550 ] 551 }, 552 553 "device_get_visibility_mask": { 554 "varlen": true, 555 "in": [ 556 {"name": "id", "type": "uint32_t"}, 557 {"name": "type", "type": "enum xrt_visibility_mask_type"}, 558 {"name": "view_index", "type": "uint32_t"} 559 ], 560 "out": [ 561 {"name": "mask_size", "type": "uint32_t"} 562 ] 563 }, 564 565 "device_is_form_factor_available": { 566 "in": [ 567 {"name": "id", "type": "uint32_t"}, 568 {"name": "form_factor", "type": "enum xrt_form_factor"} 569 ], 570 "out": [ 571 {"name": "available", "type": "bool"} 572 ] 573 }, 574 575 "device_get_face_tracking": { 576 "in": [ 577 {"name": "id", "type": "uint32_t"}, 578 {"name": "facial_expression_type", "type": "enum xrt_input_name"}, 579 {"name": "at_timestamp_ns", "type": "int64_t"} 580 ], 581 "out": [ 582 {"name": "value", "type": "struct xrt_facial_expression_set"} 583 ] 584 }, 585 586 "device_get_body_skeleton": { 587 "in": [ 588 {"name": "id", "type": "uint32_t"}, 589 {"name": "body_tracking_type", "type": "enum xrt_input_name"} 590 ], 591 "out": [ 592 {"name": "value", "type": "struct xrt_body_skeleton"} 593 ] 594 }, 595 596 "device_get_body_joints": { 597 "in": [ 598 {"name": "id", "type": "uint32_t"}, 599 {"name": "body_tracking_type", "type": "enum xrt_input_name"}, 600 {"name": "desired_timestamp_ns", "type": "int64_t"} 601 ], 602 "out": [ 603 {"name": "value", "type": "struct xrt_body_joint_set"} 604 ] 605 }, 606 607 "device_reset_body_tracking_calibration_meta": { 608 "in": [ 609 {"name": "id", "type": "uint32_t"} 610 ] 611 }, 612 613 "device_set_body_tracking_calibration_override_meta": { 614 "in": [ 615 {"name": "id", "type": "uint32_t"}, 616 {"name": "new_body_height", "type": "float"} 617 ] 618 }, 619 620 "device_get_battery_status": { 621 "in": [ 622 {"name": "id", "type": "uint32_t"} 623 ], 624 "out": [ 625 {"name": "present", "type": "bool"}, 626 {"name": "charging", "type": "bool"}, 627 {"name": "charge", "type": "float"} 628 ] 629 }, 630 631 "device_get_brightness": { 632 "in": [ 633 {"name": "id", "type": "uint32_t"} 634 ], 635 "out": [ 636 {"name": "brightness", "type": "float"} 637 ] 638 }, 639 640 "device_set_brightness": { 641 "in": [ 642 {"name": "id", "type": "uint32_t"}, 643 {"name": "brightness", "type": "float"}, 644 {"name": "relative", "type": "bool"} 645 ] 646 }, 647 648 "future_get_state": { 649 "in": [ 650 {"name": "future_id", "type": "uint32_t"} 651 ], 652 "out": [ 653 {"name": "out_state", "type": "enum xrt_future_state"} 654 ] 655 }, 656 657 "future_cancel": { 658 "in": [ 659 {"name": "future_id", "type": "uint32_t"} 660 ] 661 }, 662 663 "future_destroy": { 664 "in": [ 665 {"name": "future_id", "type": "uint32_t"} 666 ] 667 }, 668 669 "future_get_result": { 670 "in": [ 671 {"name": "future_id", "type": "uint32_t"} 672 ], 673 "out": [ 674 {"name": "out_ft_result", "type": "struct xrt_future_result"} 675 ] 676 } 677}