Commit graph

1136 commits

Author SHA1 Message Date
Jakob Bornecrantz 77ba132452 u/logging: Add u_log_set_sink implementation 2022-03-17 15:37:09 +00:00
Ryan Pavlik 81eaf5c28c gradle: update NDK and build tools versions to be consistent. 2022-03-16 20:29:50 +00:00
Jakob Bornecrantz e89e3d5276 aux/vk: Add XRT_CHECK_RETURN to sync functions 2022-03-15 00:16:17 +00:00
Mateo de Mayo 2bb0c5cda5 t/slam: Implement CSV writers for trajectories and timing info
This CSV files can be used for offline analysis.
2022-03-14 23:42:13 +00:00
Mateo de Mayo c9f7184d64 t/slam: Implement timing and trajectory error UI graphs 2022-03-14 23:42:13 +00:00
Mateo de Mayo af2dde11c3 misc: Fix some release build warnings and minor changes
- Add CMakeUserPresets.json to .gitignore
- Fix DASSERTs warning for release builds
- Do not use one euro filter with invalid poses
- Other NFC style changes
2022-03-14 23:42:13 +00:00
Mateo de Mayo 1dbda3d8c8 t/euroc: Tie CSV file opening to recorder lifecycle
This is a better way of handling writing small but high frequency data
like IMU samples so as to avoid continuous opening and closing of a file.
2022-03-14 23:42:13 +00:00
Jakob Bornecrantz 37354b953c aux/vk: Add more timeline semaphore functions 2022-03-14 18:58:35 +00:00
Jakob Bornecrantz d0f6ea10bc u/worker: Fix some late feedback 2022-03-14 18:57:35 +00:00
Jakob Bornecrantz 84069cc4f0 u/logging: Add logging sink to intercept log messages 2022-03-14 17:21:20 +00:00
Antonio Ospite 37852ffa65 xrt: fix -Wreturn-type warnings
Add some missing returns pointed out by -Wreturn-type:

-----------------------------------------------------------------------
[75/1571] Building C object src/xrt/auxiliary/CMakeFiles/aux_util.dir/util/u_config_json.c.o
.../src/xrt/auxiliary/util/u_config_json.c: In function ‘u_gui_state_scene_to_string’:
.../src/xrt/auxiliary/util/u_config_json.c:524:1: warning: control reaches end of non-void function [-Wreturn-type]
  524 | }
      | ^
-----------------------------------------------------------------------
2022-03-14 14:06:02 +00:00
Jakob Bornecrantz 771aeda784 u/worker: Add task worker helper 2022-03-11 15:29:16 +00:00
Jakob Bornecrantz 76d8944765 os/threading: Add os_cond wrapper 2022-03-11 15:29:16 +00:00
Antonio Ospite e8c9d8f575 xrt: fix -Wunused-variable warnings
Some variables are only used in asserts, so they may be unused
depending on the build type:

-----------------------------------------------------------------------
[68/315] Building C object src/xrt/auxiliary/CMakeFiles/aux_util.dir/util/u_sink_combiner.c.o
.../src/xrt/auxiliary/util/u_sink_combiner.c:188:11: warning: unused variable 'diff_ns' [-Wunused-variable]
                int64_t diff_ns = frames[0]->timestamp - frames[1]->timestamp;
                        ^
1 warning generated.
[205/315] Building C object src/xrt/compositor/CMakeFiles/comp_main.dir/main/comp_renderer.c.o
.../src/xrt/compositor/main/comp_renderer.c:872:17: warning: unused variable 'layer_count' [-Wunused-variable]
        const uint32_t layer_count = c->base.slot.layer_count;
                       ^
1 warning generated.
-----------------------------------------------------------------------

Mark them as XRT_MAYBE_UNUSED to fix the build warnings.
2022-03-09 14:53:06 +01:00
Antonio Ospite 14a1ced0e4 xrt: fix -Wreturn-type warnings
Add some missing returns pointed out by -Wreturn-type:

-----------------------------------------------------------------------
[32/315] Building C object src/xrt/auxiliary/CMakeFiles/aux_gstreamer.dir/gstreamer/gst_sink.c.o
.../src/xrt/auxiliary/gstreamer/gst_sink.c:53:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
}
^
1 warning generated.
[84/315] Building C object src/xrt/auxiliary/CMakeFiles/aux_vk.dir/vk/vk_compositor_flags.c.o
.../src/xrt/auxiliary/vk/vk_compositor_flags.c:117:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
}
^
.../src/xrt/auxiliary/vk/vk_compositor_flags.c:146:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
}
^
2 warnings generated.
-----------------------------------------------------------------------

For the function returning VkImageAspectFlags return a literal 0 because
the enum values VK_IMAGE_ASPECT_NONE or VK_IMAGE_ASPECT_NONE_KHR may not
always be defined.
2022-03-09 14:52:29 +01:00
Jakob Bornecrantz 17e9e06de7 aux/vk: Detect external semaphore support 2022-03-08 21:04:56 +00:00
Jakob Bornecrantz c0bd8ce3ba aux/vk: Let vk_init_from_given enable timeline semaphores 2022-03-08 21:04:56 +00:00
Jakob Bornecrantz 3c8378631f aux/vk: Properly set log_level in given vk_bundles 2022-03-08 21:04:56 +00:00
Jakob Bornecrantz 3044794f93 aux/vk: Rename timeline_semaphores to features.timeline_semaphore 2022-03-08 21:04:56 +00:00
Moses Turner 7235b6a45a u/sink: Add some comments 2022-03-08 20:38:58 +00:00
Moses Turner 37f0c901d2 u/sink: Add sink to convert from stereo to two SLAM frames 2022-03-08 20:38:58 +00:00
Jakob Bornecrantz 7b0cee5a85 u/trace_marker: Add new tracking category 2022-03-08 10:46:48 +00:00
Jakob Bornecrantz d06bb04357 u/trace_marker: Tidy 2022-03-08 10:46:47 +00:00
Jakob Bornecrantz 0ebb1c3be9 t/psmv: Make TrackerPSMV be standard layout 2022-03-07 16:48:28 +00:00
Moses Turner ffee6c360b u/sink: Don't sleep when combining frames; we're not testing
Where's the dunce cap?
2022-03-01 01:14:57 -06:00
Jakob Bornecrantz f5c77dfb32 aux/vk: Add vk_create_and_submit_fence_native 2022-02-24 20:54:47 +00:00
Jakob Bornecrantz 78f3340bf5 aux/vk: Check which fence types support import and export 2022-02-24 20:54:47 +00:00
Jakob Bornecrantz ebe895bdb8 aux/vk: Add vkGetPhysicalDeviceExternal[Buffer|Fence|Semaphore]PropertiesKHR (NFC) 2022-02-24 17:51:59 +00:00
Jakob Bornecrantz 543f28abf9 aux/vk: Add vkGetFenceWin32HandleKHR (NFC) 2022-02-24 17:51:59 +00:00
Jakob Bornecrantz 36025886ee aux/vk: Refactor our sync primitives (NFC) 2022-02-24 17:51:59 +00:00
Jakob Bornecrantz d6e0c45855 aux/vk: Order files in build scripts (NFC) 2022-02-24 17:51:59 +00:00
Connor Smith e1c180240e Create VkQueue with queueIndex from XrGraphicsBindingVulkanKHR.
Per XR_KHR_vulkan_enable: "the OpenXR runtime must interpret the image
as being owned by the VkQueue specified in XrGraphicsBindingVulkanKHR."
(https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XR_KHR_vulkan_enable)
2022-02-23 17:45:46 -05:00
Mateo de Mayo a0021dc7d0 t/euroc: Fix memory leak in euroc recorder
This was the reason the recorder was eating so much RAM.
SSD write speeds should be enough for common use cases to keep RAM stable.
2022-02-22 22:56:07 +00:00
Ryan Pavlik 7b3a2e7c1a a/math: C wrapper for the float low-pass filter too. 2022-02-22 16:44:44 -06:00
Ryan Pavlik cf07791e93 a/math: Add a C wrapper for the integer low-pass filter. 2022-02-22 16:42:53 -06:00
Ryan Pavlik a0e2df4cf0 tracking/math: Move the generic low pass filters to a/math 2022-02-22 16:42:53 -06:00
Ryan Pavlik 4156cabedf a/tracking: Add an integer version of the low-pass filter. 2022-02-22 09:58:19 -06:00
Ryan Pavlik 928254ffed a/math: Add a rational number struct template. 2022-02-22 09:58:19 -06:00
Mateo de Mayo 4b94d83c11 a/math: Fix one euro implementations not dividing by dt
The dy name was kept. It can now be thought of as "[d]erivative of [y]"
instead of the previous "change of y". Also, the beta parameters of the
one-euro users were adjusted by approximately multiplying them by 0.016
to compensate.
2022-02-22 13:34:45 +00:00
Mateo de Mayo 17dee2bb68 t/slam: Cache tracked pose timestamp
This is mainly to avoid problems with filters that calculate
their dt from previous calls. In particular the one euro filter fix
that gets implemented in the next commit would crash because of dt=0.
2022-02-22 13:34:45 +00:00
Mateo de Mayo b04c26e522 a/math: Expose quat_{exp, ln} and test them 2022-02-22 13:34:45 +00:00
Moses Turner 8972778e00 a/vk: Remove superfluous format assignment in the readback pool
This also caused a segfault when the readback pool filled up.
2022-02-20 00:51:26 -06:00
Christoph Haag 49b81e219f aux/util: Move fov from u_device_simple_info::views to top level 2022-02-19 13:04:32 +00:00
Christoph Haag 996a5d3e9a xrt: Move fov from xrt_view to xrt_hmd_parts::distortion 2022-02-19 13:04:32 +00:00
Moses Turner 2e8f572a4d aux/vk: Add util to read VkImages back to a pool of xrt_frames
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-02-18 20:26:27 -06:00
Moses Turner 8f792c9165 u/sink: Add u_sink_create_to_r8g8b8_r8g8b8a8_r8g8b8x8_or_l8 2022-02-18 20:06:20 -06:00
Moses Turner 433ae0d9c6 aux/gst: Support RGBA and images with unusual row strides 2022-02-18 20:06:20 -06:00
Moses Turner 727c087366 aux/vk: Add helper for adding image memory barriers 2022-02-18 20:06:20 -06:00
Moses Turner 5a2088ee3e aux/vk: Add vkCmdBlitImage to vk_helpers 2022-02-18 20:06:20 -06:00
Moses Turner 3a7569a7b0 u/trace_marker: Add COMP_TRACE_IDENT 2022-02-18 20:06:20 -06:00
Moses Turner 00984aa021 aux/vk: Add advanced create image function 2022-02-18 20:06:20 -06:00
Jakob Bornecrantz ba0f7cba8b aux/vk: More comments 2022-02-19 00:34:01 +00:00
Jakob Bornecrantz 5222dfd728 aux/vk: Refactor and document various compositor swapchain image flags
This also fixes two errors:
* VK_IMAGE_USAGE_SAMPLED_BIT was not always added to depth formats.
* VK_IMAGE_ASPECT_DEPTH_BIT and VK_IMAGE_ASPECT_STENCIL_BIT was added to image
  views for sampling, where the spec only allows one of them.
2022-02-18 21:32:05 +00:00
Jakob Bornecrantz 05771e7b9e aux/vk: Rename compositor swapchain image helper functions (NFC) 2022-02-18 21:32:05 +00:00
Jakob Bornecrantz ad5a057737 aux/vk: Refactor out swapchain functions to own file (NFC) 2022-02-18 21:32:05 +00:00
Jakob Bornecrantz 4539b74e56 aux/vk: Re-org one function (NFC) 2022-02-18 21:32:05 +00:00
Jakob Bornecrantz 20c7e30304 aux/vk: Remove unnecessary breaks 2022-02-18 18:29:28 +00:00
Jakob Bornecrantz 0126819f21 aux/vk: Use aspect mask that covers both depth and stencil for mixed formats 2022-02-18 18:29:28 +00:00
Jakob Bornecrantz 9a884931bb c/client: Use correct VkImageAspectFlags in barriers 2022-02-17 19:29:57 +00:00
Jakob Bornecrantz 223aa515fd u/device: Add u_device_get_view_poses helper 2022-02-16 23:15:07 +00:00
Jakob Bornecrantz 47ae7c19c3 u/trace_marker: Add driver category 2022-02-16 22:25:55 +00:00
Jakob Bornecrantz 91a2a5d29d c/client: Set correct optimal layout for client swapchains 2022-02-16 18:20:44 +00:00
Mateo de Mayo 83fceec521 t/slam: Add filtering methods to the tracker
Adds three toggleable filters:
- Moving average
- Exponential smoothing
- One euro filter
2022-02-14 10:22:05 -03:00
Mateo de Mayo b90d60a9ce t/slam: Add prediction types that integrate gyro and accel samples 2022-02-14 10:22:05 -03:00
Mateo de Mayo 8820a3e99c a/math: Add m_filter_euro_quat 2022-02-14 10:22:05 -03:00
Mateo de Mayo 06597a0655 a/math: Add math_quat_{len, unrotate} 2022-02-14 10:22:05 -03:00
Mateo de Mayo cf5574a4e9 m/space: Add m_space_relation_interpolate 2022-02-14 10:22:05 -03:00
Moses Turner e553d1993b u/sink: refactor u_sink_combiner
So you can use the enforcing-genlock bit elsewhere
2022-02-10 10:55:06 -06:00
Ryan Pavlik acc9683e0f a/util: Fix copy/move assign of history buf 2022-02-08 17:08:00 -06:00
Ryan Pavlik a904914e6e a/util: Wrap "just enough" of the ring buffer stuff for generic use from C. 2022-02-08 13:18:15 -06:00
Ryan Pavlik 3b0252bda8 a/util: Don't make the RingBufferHelper compile-depend on max size. 2022-02-08 13:18:05 -06:00
Ryan Pavlik c079eabfdf a/util: iterator cleanups to reduce diffs, using a self typedef. 2022-02-08 17:00:11 +00:00
Ryan Pavlik 6908486022 a/util: Add age clamping to history buffer. 2022-02-08 17:00:11 +00:00
Ryan Pavlik 603117a1d1 a/util: Split history buf file up, factor out more generic iterator base 2022-02-08 17:00:11 +00:00
Ryan Pavlik 94e053d0d4 a/math: More relation history cleanup 2022-02-08 17:00:11 +00:00
Ryan Pavlik 1c183a9eeb a/math: Simplify m_history_relation using standard algorithms 2022-02-08 17:00:11 +00:00
Ryan Pavlik 90c74578d1 a/util: Refactor HistoryBuffer to be more like a standard container. 2022-02-08 17:00:11 +00:00
Ryan Pavlik 8030468f95 os: Add a c++ wrapper for our mutex types 2022-02-08 17:00:11 +00:00
Ryan Pavlik 9b6d117970 a/util: Some reorg and renaming in upa to be closer to upc 2022-02-08 10:51:40 -06:00
Ryan Pavlik 78e9acc6c4 a/util: Remove unused member in upc 2022-02-08 10:51:39 -06:00
Ryan Pavlik 0f8565ec71 a/util: Some further internal renames for pacing 2022-02-08 10:51:39 -06:00
Ryan Pavlik 6345962d66 a/util: Rename app_time_* in u_pc to comp_time_* 2022-02-08 10:51:39 -06:00
Ryan Pavlik d176b18598 a/util: Allow upc present offset to be variable. 2022-02-08 10:51:39 -06:00
Ryan Pavlik 2238aff403 a/util: Catch frame_id mismatch in u_pacing_compositor 2022-02-08 10:51:39 -06:00
Ryan Pavlik a2e1eb7e75 a/util: Have all timestamps be injected into pacing.
No more calling os_monotonic_get_ns() inside the pacing helpers.
Much better testability.
2022-02-08 10:51:39 -06:00
Ryan Pavlik d969bc334f a/util: More pacing documentation 2022-02-07 13:11:00 -06:00
Jakob Bornecrantz 309c45f4c4 aux/bindings: Tidy 2022-01-31 22:43:09 +00:00
Jakob Bornecrantz 037b161fb4 aux/binding: Rename function 2022-01-31 22:43:09 +00:00
Jakob Bornecrantz f0a5f1977c aux/bindings: Add OpenXR Identifier 2022-01-31 22:43:09 +00:00
Ryan Pavlik 9b9e23be62 a/util: Add a new constructor and a new method to u_string_list 2022-01-24 16:34:45 -06:00
Ryan Pavlik d057f00b54 doc: Fix broken link 2022-01-24 14:08:06 -06:00
Ryan Pavlik c9889f776f xrt: Rename xrt_space_graph to xrt_relation_chain.
Rename all functions and instances accordingly as well,
and add documentation for all methods.
2022-01-21 19:54:30 +00:00
Moses Turner 7b3378b28a aux/tracking; st/gui: save/load calibration gui state to file 2022-01-18 17:18:43 +00:00
Moses Turner 254c233c76 util/u_config_json: add functions to save/load gui state to file 2022-01-18 17:18:43 +00:00
Ryan Pavlik 6677d42642 a/util: Frame pacing docs and some error handling 2022-01-15 01:06:48 +00:00
Ryan Pavlik a7c22fd185 a/util: Rename u_render_timing to u_pacing_app and u_frame_timing to u_pacing_compositor.
They both control pacing, but for different uses. Neither actually performs any timing.
2022-01-15 01:06:48 +00:00
Ryan Pavlik 365b3ca8d4 a/util: Make display timing helper more configurable.
Also comment some display timing interfaces better.
2022-01-15 01:06:48 +00:00
Christoph Haag f978f2691d aux/vk: Don't leak VkExtensionProperties 2022-01-13 23:48:44 +01:00
Christoph Haag 147851ffdc aux/ft: Add some documentation comments 2022-01-13 23:07:57 +01:00
Christoph Haag 3eecb0f991 aux/vk: Add vkGetPhysicalDeviceSurfaceCapabilities2EXT function 2022-01-13 23:07:16 +01:00
Christoph Haag 693aceb755 aux/vk: Add VK_EXT_display_control functions 2022-01-13 23:07:16 +01:00
Christoph Haag ec64a856b4 aux/vk: Use VK_DEBUG instead of U_LOG for vk device ext selection 2022-01-13 23:07:01 +01:00
Christoph Haag 8e020fac2d c/main: Add and enable VK_EXT_display_control optional device ext 2022-01-13 23:06:40 +01:00
Christoph Haag b7d179b1b3 c/main: Add display surface counter optional vk instance ext 2022-01-13 23:06:15 +01:00
Christoph Haag ce6339e237 c/main: Make more use of string list for device ext 2022-01-13 23:05:06 +01:00
Christoph Haag 171a3830b9 u/string_list: Add constructor from existing list 2022-01-13 23:04:17 +01:00
Christoph Haag 13e3db6128 aux/vk: Add vkEnumerateInstanceExtensionProperties 2022-01-13 23:03:38 +01:00
Christoph Haag 7174545ee8 aux/vk: remove duplication of vk_get_loader_functions functionality 2022-01-13 23:03:38 +01:00
Christoph Haag 20f265d9ae u/string_list: Add contains function 2022-01-13 22:37:25 +01:00
Christoph Haag 07ddac523c build: Build u_string_list with meson too 2022-01-13 22:37:25 +01:00
Christoph Haag 77f19161fb aux/binding: extract monado_binding earlier from list 2022-01-13 14:16:20 +01:00
Jakob Bornecrantz d8cce715da u/bindings: Remove duplicate paths in by_length 2022-01-13 14:01:44 +01:00
Christoph Haag 435503f2c4 aux/bindings: Further cleanup, use object members for Component
instead of passing json data around
2022-01-13 14:01:44 +01:00
Christoph Haag 450eb182d0 aux/bindings: Minor refactor of generator scripts 2022-01-13 14:01:44 +01:00
Christoph Haag 7917110e1c aux/bindings: Remove unnecessary pathgroup parameter 2022-01-12 23:03:30 +01:00
Christoph Haag 595ca11c68 aux/bindings: Don't generate invalid code for missing monado_binding
The closing } for a binding template was not written.
2022-01-12 23:03:30 +01:00
Christoph Haag 47801859e7 aux/bindings: Replace "feature" with "component" 2022-01-12 23:02:53 +01:00
Christoph Haag a3cd52ae8f aux/bindings: Actually generate code to convert xrt_input_name enum 2022-01-12 23:02:53 +01:00
Christoph Haag 153280607f aux/bindings: Split function to convert input/output enums into two
xrt_input_name and xrt_output_name are actual different types.
2022-01-12 23:02:53 +01:00
Jarvis Huang 97100821d2 ipc/android: Add shutdown mechanism back 2022-01-05 14:59:39 +00:00
Jarvis Huang 6a61ed5695 ipc/android: Stop runtime service when no clients connected 2022-01-05 14:59:39 +00:00
Moses Turner 683dc4ea56 gui: add SLAM Stereo option to calibrate gui 2022-01-04 18:19:17 +00:00
Moses Turner 17034f0283 aux/tracking: assert on fisheye mat size for fisheye path 2022-01-04 18:19:17 +00:00
Mateo de Mayo 7e0d93e3fb tests: Add tests for quatexpmap interface functions and minor changes in their docs 2021-12-22 12:16:27 -03:00
Mateo de Mayo 70576c2f02 t/slam: Implement basic prediction from last tracked poses 2021-12-21 11:43:17 +00:00
Mateo de Mayo 090e465dda external: Add semver to slam_tracker (1.0.0) and pose timestamps 2021-12-21 11:43:17 +00:00
Mateo de Mayo 74e149159b t/slam: Add SLAM_SUBMIT_FROM_START envvar
Useful for setups that need some tuning to their sensors before sending
data to a SLAM system.
Removes the submit_frames property from wmr_camera as this replaces it.
2021-12-21 11:43:17 +00:00
Mateo de Mayo 76d7729e4d m/vec3: Add operator/ for scalar division 2021-12-21 11:43:17 +00:00
Mateo de Mayo bcb4cd82cd aux/math: Use dt in calculation of ang vel between quat diference 2021-12-21 11:43:17 +00:00
Mateo de Mayo 3e8a070e93 u/var: Add u_var_combo 2021-12-21 11:43:17 +00:00
Christoph Haag 8bbaf2a05b a/tracking: Use #pragma message instead of #warning
Avoids warning
../src/xrt/auxiliary/tracking/t_tracker_slam.cpp:66:2: warning: #warning is a GCC extension
2021-12-14 13:51:16 +01:00
Mateo de Mayo fe4f6c6eb0 misc: Improve wmr and euroc docs, fix ht memory leak, stride for cv::Mats 2021-12-12 13:13:18 -03:00
Mateo de Mayo cd0342c8dc aux/util: Add u_frame_create_roi 2021-12-12 13:12:42 -03:00
Mateo de Mayo fa88ce5f3f u/var: Add u16 var kind 2021-12-12 13:06:04 -03:00
Mateo de Mayo 471ca9530b m/3dof: Add reset functionality 2021-12-12 13:06:04 -03:00
Moses Turner 749723f0ba xrt: Remove xrt_view::display::{w|h}_meters
It is not used anywhere.
2021-12-10 21:27:15 -06:00
Ryan Pavlik 26e5f6eee7 a/math: Bring the C++ wrapper for relation_history up to parity.
Also add tests for it too.
2021-12-10 21:06:04 +00:00
Ryan Pavlik ef4550c268 a/math: Add a "get latest" to relation history as well. 2021-12-10 21:06:04 +00:00
Ryan Pavlik aff7079dca a/math: Let relation history report its size 2021-12-10 21:06:04 +00:00
timongentzsch ba353e276d Bugfix in solving quadratic equation for FoV calculation 2021-12-10 18:08:50 +00:00
Ryan Pavlik e5e8451a81 a/math: Update relation history to return something from push. 2021-12-09 13:44:12 -06:00
Mateo de Mayo b29c4ee78f u/json: Update macro signatures to fix MSVC builds 2021-12-08 15:35:54 +00:00
Ryan Pavlik 0b11ce3a27 a/vk: Add timeline semaphore to the list of optional features. 2021-12-08 00:54:12 +00:00
Ryan Pavlik 2af3798e44 a/vk: Fix typo in physical device feature chain 2021-12-08 00:54:12 +00:00
Jakob Bornecrantz 98982bd25b a/math: Fix warning in math_matrix_2x2_multiply 2021-12-07 13:30:45 +00:00
Jakob Bornecrantz 6598217a01 u/vive: Correct Vive Pro model_name
Fixes #106
2021-12-06 19:43:49 +00:00
Jakob Bornecrantz b621955873 a/vk: Put vendor extensions last 2021-12-06 17:25:09 +00:00
Jakob Bornecrantz 5289b081c5 a/vk: Check for VK_KHR_timeline_semaphore 2021-12-06 17:25:09 +00:00
Jakob Bornecrantz 0eca48ec2b a/vk: Add all functions for VK_KHR_timeline_semaphore 2021-12-06 17:25:09 +00:00
Jakob Bornecrantz 7d529a3dfc a/vk: Change script to make it clang-format friendly 2021-12-06 17:25:09 +00:00
Jakob Bornecrantz 94ad966e4d a/vive: Also correctly error on unknown controller warnings 2021-12-06 11:44:33 +00:00
Jakob Bornecrantz aace8ff62d a/vive: Look for model_name correctly 2021-12-06 11:44:33 +00:00
Jakob Bornecrantz a6b4e6a830 m/3dof: Show more in the variable tracker 2021-12-05 15:30:14 +00:00
Jan Schmidt bb5aa35c00 a/math: Add math_matrix_3x3_identity()
Add an initialisation function to set a 3x3 matrix
to the identity matrix.
2021-12-05 00:06:05 +11:00
Jakob Bornecrantz e21e28c455 u/vive: Be more verbose if we fail to parse model_[name|number] 2021-12-03 21:13:57 +00:00
Moses Turner 31f155acbd cmake: make xrt-external-json public for aux_tracking 2021-12-03 19:22:57 +00:00
Jakob Bornecrantz 8c04bf1274 a/math: Add C++ RelationHistory interface class 2021-12-03 14:00:37 +00:00
Jakob Bornecrantz efde7f185c a/math: Put m_relation_history_get out argument last 2021-12-03 14:00:32 +00:00
Jakob Bornecrantz ed48e6d47d a/math: Constify in argument 2021-12-03 13:53:46 +00:00
Ryan Pavlik 2b64e5b965 a/math: Extend m_relation_history to pass the tests. 2021-12-03 13:53:46 +00:00
Ryan Pavlik 217dee2ce3 a/math: Add m_relation_history_result return from m_relation_history_get 2021-12-03 13:45:43 +00:00
Ryan Pavlik 01e3d9871c a/math: Replace RH_DEBUG for relation history with better use of logging macros 2021-12-03 13:45:43 +00:00
Jarvis Huang 27550ffa39 aux/android: Looper trick for NativeActivity with app-glue 2021-12-02 09:40:36 -06:00
Mateo de Mayo 07bd614930 t/file: Extend calibration save/load interfaces with new v2 format 2021-12-02 11:27:42 -03:00
Mateo de Mayo 1483ec32c5 t/file: Implement json save/load for v2 calibration 2021-12-02 11:26:11 -03:00
Mateo de Mayo 31f71251e0 t/util: Add dump function for single camera calibration struct 2021-12-01 18:32:16 +00:00
Mateo de Mayo 1cc80f5476 t/slam: Use euroc recorder in slam tracker 2021-12-01 13:45:18 +00:00
Mateo de Mayo 91ecbdb7fb t/euroc: Add euroc dataset recorder 2021-12-01 13:45:18 +00:00
Mateo de Mayo e245f4e5a9 u/sink: Allow u_sink_queue to queue more than one frame
Passing max_size=1 gives a similar behaviour as before, although instead
of discarding the last enqueued frame, it just ignores the new frame.
2021-12-01 13:45:18 +00:00
Mateo de Mayo 33d360083f external/slam: Update slam_tracker interface to support dynamic features 2021-11-30 10:01:33 -03:00
Moses Turner 8cde257817 aux/math: add vec3 overloads for scalar multiplication 2021-11-29 23:23:57 -06:00
Jakob Bornecrantz 3f98ea5595 xrt: Tidy s/ll/log_level/g
Also make sure all variable logging uses the right type for logging variables.
2021-11-22 14:29:10 -06:00
Ryan Pavlik 27a8ec675b a/util: Add utility for lists of strings, like extension lists. 2021-11-20 17:21:02 +00:00
Jan Schmidt 760e8dd3ad meson: Add GStreamer recording support 2021-11-19 04:05:40 +11:00
Ryan Pavlik 2e323add6f drivers: Migrate num_ to _count 2021-11-13 12:04:38 +00:00
Ryan Pavlik dfa0aba496 aux: Migrate num_ to _count 2021-11-13 12:04:38 +00:00
Ryan Pavlik 469b9d907d st/oxr: Rename all num_ in the state tracker, too. 2021-11-13 12:04:38 +00:00
Ryan Pavlik 33c0287f8b xrt: Rename all "num" parameters and fields to "count" (or "capacity" as appropriate)
This matches the OpenXR usage: the array is the plural of the element type,
and the count is the singular element type plus "count" (usually CountOutput
because of the two-call idiom)

Includes fixes to other code to match API changes.
2021-11-13 12:04:38 +00:00
Mateo de Mayo b94b7d1f52 u/json: Implement C++ wrapper for cJSON 2021-11-12 15:33:06 -03:00
Mateo de Mayo 87a1198b0a misc: Address compilation warnings and fix u_json_get_bool 2021-11-12 15:33:06 -03:00
Ryan Pavlik cc4007a69e cmake: Substantial cleanups and simplifications
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Jakob Bornecrantz 62ca16c70e a/math: Make sure it's safe to pass in the result as either left or right 2021-11-12 10:27:54 +00:00
Jakob Bornecrantz e8b0ab3b35 aux/vk: Add many more helper functions 2021-11-10 14:22:28 +00:00
Ryan Pavlik 35d7e85266 a/vk: Return of the justification and function rename 2021-11-09 15:36:24 -06:00
Ryan Pavlik b816c08141 a/vk: Add to the file comments mentioning the script. 2021-11-09 11:05:15 -06:00
Ryan Pavlik 8a56046c1d a/vk: Also generate the extension list/checking 2021-11-09 11:05:15 -06:00
Ryan Pavlik 9fc992d540 a/vk: Normalize member names in extensions 2021-11-09 11:05:15 -06:00
Ryan Pavlik 01c02897dc a/vk: Update vulkan files: generate from script 2021-11-09 11:05:15 -06:00
Jakob Bornecrantz a081bacc5d aux/vk: Guard vkSignalSemaphore with VK_KHR_timeline_semaphore 2021-11-08 17:36:58 +00:00
Jakob Bornecrantz 4c4e30d875 aux/vk: Add more functions 2021-11-08 17:21:31 +00:00
Ryan Pavlik 15c8414155 cmake: Un-nest a conditional 2021-11-04 15:36:58 +00:00
Ryan Pavlik 85dab57936 a/util: Fix some it's vs its 2021-11-03 17:28:41 -05:00
Ryan Pavlik 334bd83619 a/tracking: Fix some it's vs its and other minor doc tweaks 2021-11-03 17:27:36 -05:00
Ryan Pavlik f4b61d9e41 a/os: Fix some it's vs its. 2021-11-03 17:24:17 -05:00
Ryan Pavlik a6ae6eb095 a/math: Fix some it's vs its. 2021-11-03 17:23:51 -05:00
Ryan Pavlik 86c7a27156 a/tracking: Fix doxygen warnings about invalid link requests 2021-11-03 17:13:38 -05:00
Mateo de Mayo 773eccad6c docs: Move some driver entities into @addtogroup and other NFC 2021-10-28 11:40:49 +00:00
Mateo de Mayo 891842cb51 os: Change os_nanosleep parameter to int64_t 2021-10-28 11:40:49 +00:00
Jarvis Huang c635375dc7 aux/android: Remove unused header file 2021-10-27 13:44:20 +00:00
Jarvis Huang 210a6908cd ipc/android: Avoid deadlock on Android 2021-10-27 13:44:20 +00:00