Commit graph

431 commits

Author SHA1 Message Date
Jakob Bornecrantz 10d9fbcd9e aux/util: Add some gui annotations to variable tracking 2019-09-07 14:32:53 +01:00
Jakob Bornecrantz 2a6e194b2d d/psmv: Improve accelerometer adjustment 2019-09-06 19:14:12 +01:00
Jakob Bornecrantz 2e5c8f43a0 d/psmv: Export a whole lot more variables 2019-09-06 19:14:12 +01:00
Jakob Bornecrantz 9cf6108899 aux/util: Add more types to variable tracker 2019-09-06 18:12:15 +01:00
Jakob Bornecrantz 5e3d5295b7 xrt: Add xrt_vec3_i32 2019-09-06 18:12:15 +01:00
Jakob Bornecrantz 3f13224502 d/psmv: Fix strict aliasing warnings when compiling with optimisations 2019-09-06 15:46:17 +01:00
Jakob Bornecrantz aaaa9fc235 st/oxr: Fix strict aliasing warnings when compiling with optimisations 2019-09-06 15:46:17 +01:00
Jakob Bornecrantz e8ead02c4c st/oxr: Silence warning from snprintf when compiling with optimisations 2019-09-06 15:46:06 +01:00
Jakob Bornecrantz d6465bc017 d/psvr: Enable by default 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz 8570493db1 d/psvr: Add variable tracking 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz 9192c9c6b5 d/psmv: Add variable tracking 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz 676bc81f40 d/v4l2: Add variable tracking 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz d8f8f670d3 st/prober: Add variable tracking 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz 591e6d3b29 st/oxr: Add variable tracking 2019-09-06 14:37:45 +01:00
Jakob Bornecrantz a9e88f3f20 aux/util: Add variable tracking code 2019-09-06 14:37:42 +01:00
Jakob Bornecrantz 58008d2ff1 d/psmv: Return error code 2019-09-05 22:18:14 +01:00
Jakob Bornecrantz 1ae8acc71c d/psmv: Read calibration data 2019-09-05 17:24:57 +01:00
Jakob Bornecrantz 29b1713be9 xrt: Add enum xrt_device_name so that state trackers can reason about device 2019-09-04 12:47:18 +01:00
Jakob Bornecrantz a0f2793457 xrt: It's a cross not a x 2019-09-03 15:26:10 +01:00
Jakob Bornecrantz 5de401ea58 comp: Tidy wait frame 2019-08-31 14:17:41 +01:00
Jakob Bornecrantz cfb1ca3052 comp: Ensure nominal_frame_interval_ns is a sane value 2019-08-31 14:17:41 +01:00
Jakob Bornecrantz cfa89b84c1 d/psmv: Tidy doc 2019-08-27 09:04:03 +01:00
Jakob Bornecrantz 005abd5429 t/cli: Tidy CMakeLists.txt file 2019-08-27 08:52:57 +01:00
Jakob Bornecrantz 358183115f aux/track: Micro optimize hsv filter 2019-08-27 08:34:40 +01:00
Jakob Bornecrantz f5a93699cb xrt: Add XRT_NO_INLINE define 2019-08-27 08:34:40 +01:00
Jakob Bornecrantz 1e93ba2461 xrt: Refactor frame interface 2019-08-27 08:17:21 +01:00
Jakob Bornecrantz b9c3ac797e xrt: Add colour structs 2019-08-27 08:17:21 +01:00
Jakob Bornecrantz 7f3651775b xrt: Add xrt_reference struct 2019-08-27 08:17:21 +01:00
Jakob Bornecrantz 6774a7e1b3 xrt: Add atomics and container_of helpers 2019-08-27 08:17:21 +01:00
Jakob Bornecrantz 98d7c3542c d/v4l2: Minor fixes 2019-08-27 08:17:21 +01:00
Jakob Bornecrantz 0f9b5786f3 st/oxr: Remove unnecessary NULL check 2019-08-22 16:46:42 +01:00
Ryan Pavlik a8ae7c432d aux/tracking: Fix class vs struct warnings in calibration and hsv debug code. 2019-08-21 14:29:37 -05:00
Ryan Pavlik 12de62fdbc d/psmv: Fix typo in bit mask.
Found by clang-tidy.
2019-08-21 14:28:54 -05:00
Ryan Pavlik dae90d4b42 st/oxr: Fix potential null-deref in events.
Found by clang-tidy
2019-08-21 14:28:32 -05:00
Ryan Pavlik 624fe8ab59 st/oxr: Change iteration of actions. 2019-08-21 14:28:07 -05:00
Jakob Bornecrantz 79402d0081 aux/track: Add stub calibration tracker 2019-08-20 13:07:42 +01:00
Jakob Bornecrantz a2ffb18852 aux/util: Add a special yuv or yuyv converter sink 2019-08-20 12:40:05 +01:00
Jakob Bornecrantz fc88d7d099 aux/util: Add more formats 2019-08-20 12:40:05 +01:00
Jakob Bornecrantz 36f24036eb xrt: Add more formats 2019-08-20 12:40:05 +01:00
Jakob Bornecrantz c8f16be641 xrt: Refactor out frame from frameserver 2019-08-20 12:35:55 +01:00
Christoph Haag d9736ba3b7 comp: wait for next frame in xrWaitFrame
fixes 6e396ed

It was unnecessary to move the wait to xrEndFrame.
It does not matter if the compositor renders the frame immediately because the
frame physically can not be displayed before the next HMD refresh.

On the other hand, leaving too short of a time for the compositor to render
may delay the frame past its predicted time.
2019-08-20 10:10:10 +00:00
Ryan Pavlik 2389c207f5 st/oxr: debug utils extension cleanup 2019-08-19 17:12:33 -05:00
Ryan Pavlik 077d0c39c5 st/oxr: Unify handling of extensions. 2019-08-19 17:12:33 -05:00
Benjamin Saunders c111f528b8 oxr: Optionally install as the default runtime 2019-08-19 12:09:49 -05:00
Jakob Bornecrantz a0fcaf9b6b aux/util: Disable use of conversion table for YUV to RGB for now 2019-08-17 10:34:40 +01:00
Jakob Bornecrantz 042d30c590 comp: Fix warnings 2019-08-17 10:34:12 +01:00
Jakob Bornecrantz 33dd9b65ea st/oxr: Don't pad systemName with a lot of padding
This was a thinko by me and just plain wrong.
2019-08-17 09:31:01 +01:00
Ryan Pavlik e824b83112 st/oxr: Install manifest to major version "1" subdir 2019-08-17 03:31:40 +00:00
Ryan Pavlik 6566e7d21d st/oxr: Return FUNCTION_UNSUPPORTED for some not-enabled extensions.
More to do, but this is something.
2019-08-16 18:04:53 -05:00
Ryan Pavlik ac22f30a2c st/oxr: xrGetInstanceProcAddr typo fix. 2019-08-16 18:04:53 -05:00
Ryan Pavlik ad6c26c231 st/oxr: xrGetInstanceProcAddr doesn't require an instance to enumerate layers 2019-08-16 18:04:53 -05:00
Ryan Pavlik d6df86a9ae st/oxr: Don't write debug message on functions we just don't know in GIPA. 2019-08-16 18:04:53 -05:00
Ryan Pavlik ae63bfc0ac st/oxr: Adjust two call helper to satisfy spec. 2019-08-16 23:01:04 +00:00
Ryan Pavlik ca47a216c3 d/psmv: Minor clang-tidy fixes 2019-08-16 17:25:29 -05:00
Ryan Pavlik eef6d87da4 d/v4l2: Minor clang-tidy fixes 2019-08-16 17:25:29 -05:00
Ryan Pavlik 0088c6cb6e st/oxr: Fix possible null dereference.
Found by clang-tidy.
2019-08-16 17:25:29 -05:00
Ryan Pavlik c8776a8b0d st/oxr: Minor clang-tidy fixes. 2019-08-16 17:25:29 -05:00
Ryan Pavlik c048bc0052 targets: Clang-tidy fixes (name consistency) 2019-08-16 17:25:29 -05:00
Ryan Pavlik dddb8069d0 st/prober: Minor clang-tidy fixes. 2019-08-16 17:25:29 -05:00
Ryan Pavlik 80cc620eca st/prober: Fix use of uninitialized condition.
Found by clang-tidy
2019-08-16 17:25:29 -05:00
Ryan Pavlik c874d25ee3 st/prober: Fix null dereference.
Found by clang-tidy.
2019-08-16 17:25:29 -05:00
Ryan Pavlik e21b495f90 comp: Comment a resource and memory leak 2019-08-16 17:25:19 -05:00
Ryan Pavlik 2aca9821fa comp: Clang-tidy 2019-08-16 17:20:01 -05:00
Ryan Pavlik 86d3d2b149 aux/util: clang-tidy 2019-08-16 17:12:53 -05:00
Ryan Pavlik 876bd5088f hid: Fix clang-tidy warnings. 2019-08-16 17:12:53 -05:00
Ryan Pavlik 11c5518aa0 aux/math: Simplify 2019-08-16 17:12:53 -05:00
Ryan Pavlik 1700be7022 aux/math: Fix typo 2019-08-16 17:12:53 -05:00
Ryan Pavlik dbf0bdd014 comp: Factor out some shared functionality.
Simplifies error handling as well.
2019-08-16 17:12:35 -05:00
Nova King 2d016b3385 xrt: Added support for XR Swapchain flags 2019-08-16 22:06:28 +00:00
Ryan Pavlik 557172f8ae st/oxr: Silence warning about results in binding code. 2019-08-16 10:54:53 -05:00
Ryan Pavlik 1eae45212e comp: Complete initializers for Vulkan structures 2019-08-16 10:54:49 -05:00
Ryan Pavlik 6088402605 d/psvr: Fix narrowing conversions 2019-08-16 10:45:26 -05:00
Ryan Pavlik ea0dec9898 a/util: Cast realloc results. 2019-08-16 10:45:26 -05:00
Benjamin Saunders dbbfe8e455 Handle CMAKE_INSTALL_LIBDIR being absolute
This seems to be common in distro packaging environments.
2019-08-16 14:52:45 +00:00
Ryan Pavlik 261b9125f6 d/hdk: Use string descriptor to guess at revision 2019-08-15 12:36:01 +00:00
Ryan Pavlik 93976bb276 prober: Add ability to get string descriptors.
Right now we can only use libusb to get this info.
2019-08-15 12:36:01 +00:00
Ryan Pavlik 853f8ab68e d/hdk: Port to internal HID wrapper.
Not entirely feature-complete due to lack of access to descriptor strings.
2019-08-15 12:36:01 +00:00
Ryan Pavlik 0226c11528 inc/xrt: Fix typos 2019-08-15 12:36:01 +00:00
Christoph Haag 6e396ed07e comp: Add hack waiting on xrEndFrame() until frame should be displayed.
xrWaitFrame() doesn't block at all, will only predict the time for the next frame.
Once the compositor is multithreaded, this wait should be moved to the compositor thread
and xrWaitFrame should be the function to block until the compositor finished rendering the frame.
2019-08-15 12:29:58 +00:00
Ryan Pavlik 3e34060777 st/oxr: Ignore view config type in monado headless mode. 2019-08-14 17:15:15 -05:00
Ryan Pavlik 225bac0cfb st/oxr: Enforce 0 session create flags 2019-08-14 17:14:59 -05:00
Ryan Pavlik 761c4d7ca8 Fix build. 2019-08-14 17:14:46 -05:00
Ryan Pavlik 749e6bbdc5 Bump OpenXR includes to 1.0.1 2019-08-14 12:33:34 -05:00
Ryan Pavlik 1fd9936f95 st/oxr: Fix enumerating swapchain formats on headless 2019-08-14 12:28:30 -05:00
Christoph Haag 8cda1b6f67 comp: fix cleanup of direct window, delete with correct type
Found by gcc address sanitizer.
2019-08-13 01:47:50 +02:00
Jakob Bornecrantz 5fa58efcbf st/oxr: Verify width and height on swapchain create 2019-08-01 07:39:50 +01:00
Jakob Bornecrantz 4ebc308a37 st/oxr: Update version for OpenXR 1.0 support 2019-08-01 07:34:33 +01:00
Jakob Bornecrantz 57c6078a69 st/oxr: Update to OpenXR 1.0 2019-07-29 16:43:39 +01:00
Jakob Bornecrantz 08a4b40f77 st/oxr: Fix API negotiation code 2019-07-29 16:34:48 +01:00
Jakob Bornecrantz 3a89e2f0d4 ext/oxr: Update OpenXR headers to 1.0 2019-07-29 16:34:48 +01:00
Ryan Pavlik bf45f2bc21 st/oxr: Hack the fixed bindings to add support for the Hydra 2019-07-29 04:08:06 +01:00
Ryan Pavlik 2cd28914c7 d/hydra: Initially-functional multi-device Razer Hydra driver.
Not pretty - no filtering on tracking, coordinate system
probably a little bit wrong still, no hemisphere tracking,
but enough to show movement and resizing in hello_xr.
2019-07-29 03:01:57 +00:00
Jakob Bornecrantz 9a4fee3896 st/oxr: Code style 2019-07-25 00:57:51 +01:00
Jakob Bornecrantz 5fbebd2bd5 aux/util: Code style 2019-07-25 00:57:40 +01:00
Jakob Bornecrantz d66cd05445 st/oxr: Fix warnings during release builds 2019-07-25 00:53:04 +01:00
Jakob Bornecrantz 5beaba9c0d aux/util: Fix warnings during release builds 2019-07-25 00:53:04 +01:00
Jakob Bornecrantz fb24bb979f d/hdk: Fix warnings during release builds 2019-07-25 00:53:04 +01:00
Jakob Bornecrantz 4237b97d37 d/v4l2: Add control functions and expand PS4 quirk 2019-07-24 19:49:48 +01:00
Jakob Bornecrantz 718a81608a d/v4l2: Add new frameserver 2019-07-23 17:41:34 +01:00
Jakob Bornecrantz a544b4b56f aux/util: Add sink format converters 2019-07-23 17:41:34 +01:00
Jakob Bornecrantz 6a79f5878e aux/util: Add format helper functions 2019-07-23 17:41:34 +01:00
Jakob Bornecrantz b0337f29da xrt: Add frameserver interface 2019-07-23 17:41:34 +01:00
Jakob Bornecrantz 833ca3f8f9 xrt: Add some formats 2019-07-23 13:40:08 +01:00
Jakob Bornecrantz e7a933a168 st/oxr: Verify poses in space create functions 2019-07-21 14:57:45 +00:00
Jakob Bornecrantz 505d5cf5d6 aux/math: C export paranoia 2019-07-21 14:57:45 +00:00
Jakob Bornecrantz 776c46713f aux/math: Refactor math_pose_validate into two functions 2019-07-21 14:57:45 +00:00
Jakob Bornecrantz 223206dc24 st/oxr: Refactor function returning to actually raise error this time 2019-07-21 14:15:17 +01:00
Jakob Bornecrantz 97939accda st/oxr: Slightly improve swapchain image status
The current code is not up spec at all anyways, but this at least
helps to avoid some bad situations in the current code.
2019-07-02 17:54:13 +01:00
Jakob Bornecrantz 79364eaf4c st/oxr: Validate that Swapchain has at least one released image 2019-07-02 17:54:13 +01:00
Jakob Bornecrantz 35093bee3c d/psmv: Use new prober function helpers 2019-06-30 14:35:27 +01:00
Jakob Bornecrantz e336590153 t/cli: Use new prober function helpers 2019-06-30 14:35:27 +01:00
Jakob Bornecrantz b7defdb0ae st/oxr: Use new prober function helpers 2019-06-30 14:35:27 +01:00
Jakob Bornecrantz 985536457f xrt: Add helper accessor functions to prober 2019-06-30 14:35:27 +01:00
Jakob Bornecrantz ccac11ac1d st/prober: Remove auto-wrapper 2019-06-30 14:35:27 +01:00
Jakob Bornecrantz cc83b93733 d/psmv: Add helper function to convert value to u8 2019-06-28 18:32:30 +01:00
Jakob Bornecrantz af7238ec21 t/common: Link with Libusb1 2019-06-28 17:49:24 +01:00
Jakob Bornecrantz 1e8d683a49 t/common: Add PSVR to list of defines in targets_enabled 2019-06-28 16:53:53 +01:00
Jakob Bornecrantz 58da7263f1 t/common: Fix typo in PSMV define 2019-06-28 16:53:32 +01:00
Jakob Bornecrantz ef36766aca t/cli: Stub for calibration 2019-06-28 14:03:50 +01:00
Jakob Bornecrantz 249b9a03ca t/cli: Turn prober command into a cli interface for Monado 2019-06-28 14:03:50 +01:00
Jakob Bornecrantz 699bb8d5ad st/prober: Implement camera listing function 2019-06-28 14:03:50 +01:00
Jakob Bornecrantz 16f8b013ec st/prober: Save usb path and product name 2019-06-28 14:03:50 +01:00
Jakob Bornecrantz 24d3dc45c8 xrt: Add interface to list cameras 2019-06-28 14:03:50 +01:00
Jakob Bornecrantz f926f42a0d xrt: Remove unused field on xrt_prober_device 2019-06-28 11:37:18 +01:00
Ryan Pavlik 0d75b465bd build: Move enabled-driver defines to a header, instead of compiler options for every target. 2019-06-26 10:52:27 -05:00
Jakob Bornecrantz ec69936890 build: Revert "Only show the XRT_BUILD_ defines where they're needed."
This reverts commit 334d62dfcd.
2019-06-26 16:17:06 +01:00
Jakob Bornecrantz de4dc03ab7 st/oxr: Save people from shooting themselves in the foot 2019-06-25 18:36:14 +01:00
Ryan Pavlik 1f84814721 st/prober: Allow "found" functions called by prober to make more than one device. 2019-06-22 11:34:51 +01:00
Ryan Pavlik a673a4d469 st/oxr: Make the binding finder return bool so we can chain it. 2019-06-22 11:34:51 +01:00
Ryan Pavlik ccf26dcd4e os/hid: Add support for get/set feature reports. 2019-06-22 11:34:51 +01:00
Ryan Pavlik 2b006d5df7 aux/math: Add quaternion normalization 2019-06-22 11:34:51 +01:00
Jakob Bornecrantz 46fa9cbd25 t/prober: Refactor closing down a bit 2019-06-21 21:56:06 +01:00
Jakob Bornecrantz 0fa7af1dd2 d/psvr: Set name of PSVR headset 2019-06-21 21:55:43 +01:00
Ryan Pavlik 257cf6b5a8 prober: Fix typo 2019-06-21 13:17:55 -05:00
Ryan Pavlik cfb443843f targets/common: Add comment to target_entry_list 2019-06-21 13:17:55 -05:00
Ryan Pavlik 3cc7ee872a d/psmv: Fix typo 2019-06-21 13:17:55 -05:00
Ryan Pavlik 334d62dfcd build: Only show the XRT_BUILD_ defines where they're needed. 2019-06-21 13:17:55 -05:00
Jakob Bornecrantz 80cf616355 st/prober: Improve printing order of dumping 2019-06-21 17:10:57 +01:00
Jakob Bornecrantz cf8dfe6357 st/prober: Prefer deb_path for finding usb bus and addr 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz a3ae5ae453 st/prober: Probe for V4L devices 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz cb44c822d2 st/prober: Refactor hidraw enumeration code in udev file 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz dfdc794272 st/prober: Refactor libuvc code to own file 2019-06-21 17:04:27 +01:00
Jakob Bornecrantz d9b820c834 st/prober: Refactor libusb code to own file 2019-06-21 17:04:25 +01:00
Jakob Bornecrantz 7f07cee387 st/prober: Guard libudev usage 2019-06-21 17:03:20 +01:00
Jakob Bornecrantz 542208bd42 d/ohmd: Fix warning by including right header 2019-06-19 16:45:10 +01:00
Ryan Pavlik c5fea837f3 oxr: Allow relative vs absolute manifest path to be selected at configure time. 2019-06-19 08:15:08 -07:00
Ryan Pavlik 88efae1078 oxr: Generate the dev manifest using the same template as installed. 2019-06-19 08:15:08 -07:00
Ryan Pavlik fc98db1439 oxr: Use an absolute path in the installed runtime manifest. 2019-06-19 08:15:08 -07:00
Ryan Pavlik 66086c1b0b oxr: Reduce proportion of install that's platform-guarded 2019-06-19 08:15:08 -07:00
Benjamin Saunders 40d8446ba8 oxr: Use absolute path of runtime library in manifest
Improves robustness when there might be multiple libraries by the same
name visible to the loader.
2019-06-19 08:15:08 -07:00