Jakob Bornecrantz
7cf5edbf87
st/oxr: Now that IPC correctly wait frames check predicted display for zero
2020-05-27 18:12:26 +01:00
Jakob Bornecrantz
51545411f9
st/oxr: Validate time better xrConvertTimeToTimespecTimeKHR
2020-05-27 18:12:26 +01:00
Jakob Bornecrantz
ef41cf2088
u/time: Use a very large hammer to "fix" time_state
2020-05-27 17:50:06 +01:00
Jakob Bornecrantz
4039dc7096
st/oxr: Validate some internal state and improve error message
2020-05-26 19:34:49 +01:00
Christoph Haag
41e3a6fd17
st/oxr: error on displayTime <= 0 in xrEndFrame
2020-05-26 19:34:49 +01:00
Jakob Bornecrantz
589a4ad3e9
st/oxr: Better printing of envBlendMode errors
2020-05-26 19:34:49 +01:00
Christoph Haag
4ea17ce7be
st/oxr: Always error on unsupported blend mode
...
The spec requires always returning an error if the blend mode is unsupported:
XR_ERROR_ENVIRONMENT_BLEND_MODE_UNSUPPORTED must be returned if
XrFrameEndInfo::environmentBlendMode is not supported.
2020-05-26 19:34:49 +01:00
Ryan Pavlik
3624c17754
st/oxr: Fix some warnings by initializing variables.
2020-05-26 11:25:03 -05:00
Ryan Pavlik
0f7832f2c8
st/p: Fix warnings when building without OpenCV
2020-05-26 11:21:09 -05:00
Jakob Bornecrantz
98d11709fb
st/oxr: Remove head offset when submitting layers
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
eab3cac623
st/oxr: Verify valid swapchain array index for quads.
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
8b0a43a64e
st/oxr: Test for XR_ERROR_POSE_INVALID.
...
In quad verification.
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
b1541c2d1e
st/oxr: Return XR_ERROR_SWAPCHAIN_RECT_INVALID.
...
For out of bounds imageRect offsets on quad layers.
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
1bad77efb4
st/oxr: Return XR_ERROR_SWAPCHAIN_RECT_INVALID.
...
For negative imageRect offsets on quad layers.
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
9c8d0ae3cc
xrt: Pass the flip y on layer per layer basis.
...
st/oxr: Adopt to flip y in layers change.
c/client: Adapt to flip y in layers change.
Set true for GL and false for Vulkan.
2020-05-26 11:33:58 +01:00
Lubosz Sarnecki
9349193d0c
st/oxr: Use new layer interface and accept multiple projection and quad layers.
...
Authered by Jakob Bornecrantz and Lubosz Sarnecki.
2020-05-26 11:33:58 +01:00
Jakob Bornecrantz
cea8f93892
st/oxr: Fix missed change from MNDX_egl_enable name change
2020-05-21 11:20:32 +01:00
Jakob Bornecrantz
d37f446def
st/oxr: Update openxr header and switch to XR_MNDX_egl_enable
2020-05-20 18:08:56 +00:00
Ryan Pavlik
4638b0af7b
build: Switch all CMake options to XRT_... to match what's used in source.
...
Also revise other small related parts of the build to make them more clear and consistent.
2020-05-12 11:52:51 -05:00
Lubosz Sarnecki
03074cd52e
st/oxr: Unreleased swapchain must return XR_ERROR_LAYER_INVALID.
2020-05-11 20:21:58 +01:00
Christoph Haag
5b2efcbb7a
st/prober: Fix typo in error message
2020-05-09 13:12:06 +00:00
Jakob Bornecrantz
694d978e25
st/prober: Name the tracking origin and make offset editable
2020-05-09 12:43:26 +01:00
Jakob Bornecrantz
e620fa9063
st/prober: Refactor JSON config loading so that we print less errors when we don't need the config
2020-05-07 22:25:44 +00:00
Jakob Bornecrantz
695ac70dab
st/oxr: Silence warning about uninitialized variable and add todo (NFC)
2020-05-04 18:05:13 +01:00
Christoph Haag
cf0e5d7861
st/oxr: store preferred path per binding, not per action
...
Fixes d62c2d2011
For any one action, multiple bindings may be suggested. The preferred/matched
input path depends on which binding is active.
Each bindings already stores a list of actions for which the suggested bindings
matched any of the input paths, just add a corresponding list *which* path matched.
2020-05-04 17:29:43 +02:00
Christoph Haag
2a58d1225f
bindings: Don't create broken subpath for haptic output
...
This macro created two paths for haptics, the first of which was useless/wrong:
/user/hand/*/output/haptics/
/user/hand/*/output/haptics
2020-05-04 17:29:43 +02:00
Christoph Haag
d62c2d2011
st/oxr: properly enable binding to /x and /y
...
Store Thumbstick, Trackpad etc. data internally in a vec2f.
The knowledge that a binding path ../x and ../y refers to the x and y components of this vec2f
is stored as an INPUT_REDIRECT_VEC2_X_TO_VEC1 or INPUT_REDIRECT_VEC2_Y_TO_VEC enum.
Actions now also store the index of the binding paths it matched to,
e.g. when an action binds ../trackpad/y to an input that provides bindings [../trackpad, ../trackpad/x, ../trackpad/y],
the index 2 is stored.
v2: Clarify preferred binding path index variable
2020-05-03 22:58:47 +00:00
Ryan Pavlik
53f9eb332d
st/oxr: Fix more pointer conversion warnings.
2020-04-29 17:44:07 -05:00
Ryan Pavlik
e89a3c1d8f
st/oxr: Fix 32-bit warnings when checking for null handles
2020-04-29 17:44:07 -05:00
Ryan Pavlik
d95219810e
st/oxr: Add XRT_CAST_OXR_HANDLE_TO_PTR macro
2020-04-29 17:44:07 -05:00
Ryan Pavlik
cecb8f31af
st/oxr: Add and use XRT_CAST_PTR_TO_OXR_HANDLE macro to avoid warnings.
...
Other places we do these similar conversions will need this same modification.
2020-04-29 17:44:07 -05:00
Ryan Pavlik
974c68dead
xrt: Re-arrange build to avoid unnecessary includes.
...
Avoid unintentionally including cJSON from the source tree when using system,
etc. This adds granularity to the usage of "external" sources.
2020-04-28 21:36:46 +00:00
Ryan Pavlik
4fc8d3dbea
st/gui: Fix build without OpenCV
2020-04-28 21:36:46 +00:00
Jakob Bornecrantz
b2c987945e
st/prober: Use and expose usb serial and manufacturer
2020-04-28 18:51:07 +00:00
Jakob Bornecrantz
80dd892987
xrt: Add serial and manufacturer to xrt_prober video device probing interface
2020-04-28 18:51:07 +00:00
Christoph Haag
2c818d5051
xrt: Add duration to xrt_output_value
...
The Vive Controller driver benefits from knowing the duration because
the hardware supports vibrating for a specific duration.
2020-04-28 10:22:42 +00:00
Christoph Haag
88ce6b5dcc
st/oxr: Add Vive Wand and Valve Index Controller bindings
...
v2: add vive & index haptic output to khronos/simple_controller
2020-04-28 10:22:41 +00:00
Ryan Pavlik
c191f4bc30
st/oxr: Codespell fixes
2020-04-24 15:30:46 -05:00
Jakob Bornecrantz
e37d8f4cf5
xrt: Remove timestate from xrt_device interface
2020-04-16 17:29:34 +01:00
Jakob Bornecrantz
945f2c82ed
targets: Move xrt_instance implementation into targets
2020-04-11 12:31:58 +01:00
Jakob Bornecrantz
b5354c4d83
st/gui: Remove old video test
2020-04-11 12:31:55 +01:00
Jakob Bornecrantz
57f407f02e
st/gui: Tidy CMakeLists.txt
2020-04-11 12:19:28 +01:00
Jakob Bornecrantz
85bceaceca
st/prober: Tidy CMakeLists.txt
2020-04-11 12:19:28 +01:00
Jakob Bornecrantz
c39cb39643
st/oxr: Use new xrt_instance object
2020-04-10 13:48:18 +01:00
Jakob Bornecrantz
bbc07ed5f2
st/prober: Provide a default implementation of xrt_instance interface
2020-04-10 13:48:18 +01:00
Jakob Bornecrantz
2063bc30b8
st/prober: Load tracking config from json and use new settings struct
2020-04-10 12:29:21 +00:00
Jakob Bornecrantz
a11aa689a7
st/gui: Save camera and calibration data using new settings
2020-04-10 12:29:21 +00:00
Jakob Bornecrantz
de20d87f87
xrt: Make it possible for the prober to pass in JSON data to the drivers
2020-04-10 12:29:21 +00:00
Jakob Bornecrantz
7b049a9d65
t/file: Expose non-hack version of the calibration data save function
2020-04-10 12:29:21 +00:00
Jakob Bornecrantz
9d009784b6
st/gui: Show name of device when no modes are found
2020-04-08 10:51:12 +01:00
Jakob Bornecrantz
4d7634845d
st/prober: Print serial, product and manufacturer from udev
2020-04-03 14:10:07 +01:00
Jakob Bornecrantz
96edbd9249
st/prober: Print serial, product and manufacturer from libuvc
2020-04-03 14:09:56 +01:00
Jakob Bornecrantz
9ff0ee2e6a
st/gui: Fix compilation issue with OpenCV
...
Closes #63
2020-03-25 19:59:16 +00:00
Jakob Bornecrantz
e3516061bb
u/var: Add expand RO values
2020-03-25 13:58:51 +00:00
Ryan Pavlik
377ae07e53
xrt: Add missing SPDX tags
2020-03-23 17:29:43 -05:00
Jakob Bornecrantz
6ecc1e30f3
xrt: Make stereo_camera_calibration refcounted
...
This allows the data to be safely shared and passed around, even allowing us
to tag frames with the data and passed around that way instead.
Since it now can be passed around more safely make the prober call the save
function instead of the calibration code. This then forms a basis for further
work where we can hook this up into a more proper configuration file.
2020-03-11 22:00:54 +00:00
Pete Black
b6613db5d4
d/dd: Add Daydream driver
2020-03-11 21:36:49 +00:00
Christoph Haag
de7d9de5ae
st/oxr: Fill XrViewConfigurationView with new two call helper
...
The previous two call helper macro copied the entire input struct to output struct.
In particular this did not keep the .type and .next fields intact.
Rather than trying to keep those intact, each struct type should have its own fill function,
only filling in the data we actually want to fill in.
2020-03-11 05:10:07 +01:00
Christoph Haag
e8ccb07db7
st/gui: Add compositor frame timing graph to debug ui
2020-03-09 12:59:12 +01:00
Ryan Pavlik
8548d3f7e6
build: Another missed linking fix.
2020-03-05 17:52:49 +00:00
Ryan Pavlik
71c29425d4
build: Fix linking issues preventing the OpenXR runtime from working.
2020-03-04 09:54:47 -06:00
Ryan Pavlik
92205ab5be
build: Refactor CMake build to use static libraries instead of object bundles.
...
This allows transitive dependencies to work easier and improves compatibility.
It takes a little bit more storage at build time, and possibly a little extra time.
2020-03-04 11:15:35 +00:00
Ryan Pavlik
91ba5d04bc
st/prober: Fix some unused-thing warnings when building with fewer deps.
2020-03-04 11:15:35 +00:00
Ryan Pavlik
f3eac87504
xrt: Correct usage of XRT_MAYBE_UNUSED on functions.
...
It shouldn't be used on a function marked "static inline" - that's
sufficient to avoid the warning. So, it should almost never be in
a header.
2020-03-04 11:15:35 +00:00
Ryan Pavlik
b1b08a610c
st/prober: Add missing includes
2020-03-04 11:15:35 +00:00
Ryan Pavlik
d4c5b37bc0
st/oxr: Fix 32-bit warnings
2020-03-03 10:50:41 +00:00
Ryan Pavlik
163b39b7a1
st/oxr: Fix some 32-bit porting warnings.
2020-03-03 10:33:14 +00:00
Ryan Pavlik
d7121e8df4
st/oxr: Fix the declaration of our entry points.
...
We need the attributes and calling convention to match the header
2020-03-03 10:33:14 +00:00
Jakob Bornecrantz
0619190d2b
build: Refactor how config defines are handled
...
With loads of changes from Ryan.
2020-03-03 10:33:14 +00:00
Jakob Bornecrantz
a925af90e7
xrt: Do not pass in timestate into compositor
2020-03-02 20:18:49 +00:00
Jakob Bornecrantz
aeef692e08
xrt: Refactor out main compositor creating into own interface
2020-03-02 12:00:22 +00:00
Ryan Pavlik
c590a3f69b
st/oxr: Fix segfault in conformance
2020-01-31 10:47:52 +01:00
Jakob Bornecrantz
0df88dedca
st/gui: Add support for Leap Motion Controller
2020-01-26 19:37:37 +00:00
Jakob Bornecrantz
ca06c16eeb
st/gui: Better conversion sinks
2020-01-26 19:37:37 +00:00
Jakob Bornecrantz
16eb05e089
u/sink: Make quirk sink creation parameters into a struct.
2020-01-26 19:37:37 +00:00
Jakob Bornecrantz
21ed0facb7
st/gui: Add a bit hacky pose controls
2020-01-25 16:39:57 +00:00
Jakob Bornecrantz
b3e84f9041
xrt: Make sure that auto probers can add non-HMD devices after a HMD has been found
2020-01-23 15:51:36 +00:00
Jakob Bornecrantz
c2560ae6d2
xrt: Switch to new quirking sink
...
This is done in one commit as split out they would leave the code
in a fairly broken state.
2020-01-17 14:31:50 +00:00
Jakob Bornecrantz
67d33550cf
t/calib: Change how default arguments are applied
2020-01-17 12:09:08 +00:00
Jakob Bornecrantz
8564bbec4f
st/prober: Update GUI with new truths
2020-01-16 23:04:14 +00:00
Ryan Pavlik
5592ed28da
xrt: Make vkGetInstanceProcAddr prototype available.
2020-01-16 22:37:39 +00:00
Ryan Pavlik
0df4dc2be1
st/prober: Fix typo
2020-01-16 22:37:29 +00:00
Ryan Pavlik
fcdebc6e9d
aux/tracking: Re-organize structs related to camera calibration.
...
Removes the "raw" data structures for camera calibration, not needed.
The only thing they contained beyond the revised regular structures
was derived data that the consumer might parameterize differently.
Renames t_settings_stereo to t_stereo_camera_calibration.
The calibration info is data (that could be stored on the device, etc),
not settings.
2020-01-16 09:07:52 -06:00
Ryan Pavlik
b44f14d348
st/gui: Display the calibration status data.
2020-01-14 15:55:50 -06:00
Ryan Pavlik
9790ca7602
t/calib: Add interface for getting some status info on calib process.
2020-01-14 15:55:50 -06:00
Ryan Pavlik
dec5d8de7d
st/gui: Update camera calibration config GUI
2020-01-14 15:55:50 -06:00
Ryan Pavlik
871395d5b5
build: Adjust meson build equivalently
2020-01-14 12:28:23 -06:00
Ryan Pavlik
c68d3bfe54
build: Adjust CMake build to allow actually disabling dependencies/options
2020-01-14 11:51:12 -06:00
Ryan Pavlik
f834d20300
xrt: Move OpenXR platform defines to build system
2020-01-14 11:51:12 -06:00
Ryan Pavlik
67a561d0ea
st/oxr: Fix ifdef guards
2020-01-14 11:51:12 -06:00
Jakob Bornecrantz
c383a933ea
st/oxr: Propegate device input active status through API
2020-01-13 21:59:37 +00:00
Ryan Pavlik
4cc9380f0b
st/oxr: Fix missing include.
2020-01-09 17:36:24 -06:00
Ryan Pavlik
9e953083fc
st/oxr: Move shipped binding data into a separate header to avoid re-declaration of statics
2020-01-09 17:35:54 -06:00
Ryan Pavlik
13c099f59e
xrt: Fix for mismatched parameter names
2020-01-09 22:54:01 +00:00
Christoph Haag
bc20d84171
st/oxr: Also make sure to keep actions with outputs active
2020-01-09 02:13:08 +01:00
Christoph Haag
a3d04090c5
st/oxr: Always make actions active that have inputs
...
If an applications only syncs a subset of action sets, the actions from all
sets that are not synced get the active bit reset.
Once the application starts syncing the previously not synced sets again,
the actions have to become active again.
2020-01-09 02:12:59 +01:00
Ryan Pavlik
e49fdd8523
st/oxr: EGL extension requires OpenGL enabled
2019-12-07 18:25:37 +00:00
Ryan Pavlik
51c3240c23
st/oxr: Improve extension support header.
2019-12-07 18:25:37 +00:00
Ryan Pavlik
f25b5d7f8d
st/gui: clang-tidy
2019-12-07 18:25:37 +00:00
Ryan Pavlik
06ce6617f5
st/oxr: Port logger realloc to helper macro
2019-12-07 18:24:56 +00:00
Ryan Pavlik
b47428b451
st/p: Convert to realloc macro
2019-12-07 18:24:56 +00:00
Ryan Pavlik
f6d3aabc08
st/oxr: Convert remaining realloc in binding code
2019-12-07 18:24:56 +00:00
Ryan Pavlik
2b5fa2c57f
st/p: Fix enum types in libusb usage
2019-12-07 18:24:56 +00:00
Ryan Pavlik
447b3550e8
st/oxr: Fix enum types in shipped bindings
2019-12-07 18:24:56 +00:00
Ryan Pavlik
2751824e16
st/gui: Type safety fixes
2019-12-07 18:24:56 +00:00
Ryan Pavlik
808892742b
st/p: Fix allocation size error with realloc macro
2019-12-03 09:39:06 -06:00
Ryan Pavlik
f20a0e14e0
st/oxr: Fix oversized allocation in binding code
2019-12-03 09:39:06 -06:00
Ryan Pavlik
a602b2247f
st/oxr: Fix bug in get current interaction profile.
...
We returned the path instead of putting it in the out value.
2019-12-03 09:39:06 -06:00
Jakob Bornecrantz
9b60bd7c77
t/calib: Add support to load images
2019-11-22 14:20:56 +00:00
Jakob Bornecrantz
3f202d0d6f
t/calib: Make cooldown period separate from wait period
2019-11-22 12:36:23 +00:00
Jakob Bornecrantz
86dc9e1a6b
t/calib: Re-organize parameters and make it possible to select board type
2019-11-22 12:36:23 +00:00
Jakob Bornecrantz
9a4b55758a
st/gui: Add support for mirror RGB option
2019-11-21 22:43:04 +00:00
Jakob Bornecrantz
84f9ad962c
st/gui: Tidy UI
2019-11-20 23:50:42 +00:00
Jakob Bornecrantz
ff4b91c688
st/gui: Expose fisheye option
2019-11-20 23:50:42 +00:00
Jakob Bornecrantz
dc6da46852
st/gui: Add option to save image and add separators"
2019-11-20 23:50:42 +00:00
Jakob Bornecrantz
d6317b2a14
st/gui: Expose new parameters to calibration
2019-11-20 23:50:42 +00:00
Simon Ser
c395f85565
oxr: add XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR support
2019-11-18 15:16:16 +01:00
Simon Ser
a8b2370946
xrt: accept OpenGL ES in oxr_session_populate_egl
2019-11-18 15:16:15 +01:00
Simon Ser
5eacb6f309
xrt: add support for OpenGL ES
...
This commit advertises the extension and adds support for
xrGetOpenGLESGraphicsRequirementsKHR
2019-11-18 15:16:15 +01:00
Jakob Bornecrantz
ad45aeb0a7
t/calib: Refactor loading a bit more
2019-11-17 22:09:01 +00:00
Jakob Bornecrantz
4af9978803
st/gui: Correctly destroy timekeeping
2019-11-17 20:53:18 +00:00
Jakob Bornecrantz
6d8abd87a8
t/calib: Tidy and rename calibration data to settings
2019-11-16 23:17:11 +00:00
Jakob Bornecrantz
f364b7a45b
t/calib: Make prober load calibration data instead of trackers
2019-11-16 12:17:07 +00:00
Jakob Bornecrantz
ee3d9d08f6
u/time: Send in a pointer to pointer to the timekeeping destroy function
2019-11-15 20:30:01 +00:00
Julian Eisel
05b069b0a0
Fix two use-after-free's and multiple memory leaks
2019-11-13 21:53:16 +01:00
Ryan Pavlik
882388b320
st/prober: Fix typo
2019-11-11 17:57:40 -06:00
Jakob Bornecrantz
76d6133142
cmake: Fix v4l2 flag not being set
2019-11-10 01:36:46 +00:00
Jakob Bornecrantz
a29dd8c0a4
st/oxr: Improve destruction of GUI hack
2019-11-09 12:53:42 +00:00
Jakob Bornecrantz
86244f726f
st/oxr: Improve error condition handling on instance creation
2019-11-09 12:53:42 +00:00
Christoph Haag
e78e5c8045
st/oxr: Return appropriate errors for incomplete OpenGL XLib binding
...
* xDisplay must be a pointer to a Display value
* glxDrawable must be a valid GLXDrawable value
* glxContext must be a valid GLXContext value
intentionally not checked:
* glxFBConfig must be a valid GLXFBConfig value
We don't care about this one for now.
2019-11-08 16:07:10 +01:00
Drew DeVault
e5a9cbb2f9
Implement XR_MND_egl_enable
...
This extension introduces a more robust way of creating an XrSession for
OpenGL. It also lays the groundwork for future OpenGL ES support.
https://github.com/KhronosGroup/OpenXR-Docs/pull/40
Signed-off-by: Simon Ser <contact@emersion.fr>
Signed-off-by: Drew DeVault <sir@cmpwn.com>
2019-11-06 10:07:21 +01:00
Simon Ser
eefeec12fd
oxr: check input type in oxr_swapchain_gl_enumerate_images
...
Don't blindly cast the input struct to XrSwapchainImageOpenGLKHR, check
that the type is XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR.
2019-11-05 16:32:04 +00:00
Christoph Haag
3b87d518c4
build: Fix meson build without v4l2
2019-11-05 15:36:52 +01:00
Jakob Bornecrantz
5e3565c28f
st/oxr: Set maximum image rect size to 200%
2019-11-05 12:31:42 +00:00
Jakob Bornecrantz
defdd97288
st/oxr: Fix recommended swapchain image height
2019-11-05 12:31:42 +00:00
Jakob Bornecrantz
9eedb05f1b
st/prober: Do not autoprobe if we have a HMD
2019-11-05 12:15:56 +00:00
Simon Ser
9183f53c5f
xrt: allow NULL args in various functions
...
The spec says NULL arguments are valid when the argument just exists for
extensibility. Fix the implementation to accept NULL args.
2019-11-05 10:40:21 +01:00
Simon Ser
8ade6b654b
xrt: introduce OXR_VERIFY_ARG_TYPE_CAN_BE_NULL
...
It's like OXR_VERIFY_ARG_TYPE_AND_NOT_NULL, but doesn't ensure the argument
is non-NULL.
2019-11-05 10:21:23 +01:00
Simon Ser
1b51db68f9
xrt: rename OXR_VERIFY_ARG_TYPE_AND_NULL to …_NOT_NULL
2019-11-05 10:15:35 +01:00
Jakob Bornecrantz
b59676e184
st/oxr: Comment all parameters
2019-11-02 22:40:26 +00:00
Ryan Pavlik
e8660a18bd
build: Use CMAKE_POSITION_INDEPENDENT_CODE instead of target props.
...
Reduces repetitive code.
2019-11-01 16:51:54 -05:00
Jakob Bornecrantz
e84ca2de34
st/oxr: Use xrt_compositor helpers
2019-10-28 21:00:56 +00:00
Jakob Bornecrantz
c11640d66b
st/oxr: Make sure actions that are not marked as active are deactivated
2019-10-28 14:58:59 +00:00
Jakob Bornecrantz
312a99ecf8
st/oxr: Implement any sub-action path handling
2019-10-28 14:58:59 +00:00
Jakob Bornecrantz
186f3ff7e0
st/prober: Ignore I2C based hid devices
2019-10-25 18:39:34 +01:00
Ryan Pavlik
6b8b1ae935
st/oxr: Fix changed since last sync and support for more input types
2019-10-24 22:16:40 +01:00
Jakob Bornecrantz
aa52da072f
xrt: Remove relation input type
2019-10-24 21:51:07 +01:00
Ryan Pavlik
d3d6f15107
st/prober: More data in the "failed to get interface number" messages.
2019-10-24 15:45:41 +01:00
Ryan Pavlik
939c41aba9
st/oxr: If the app called request-exit, go to exiting instead of ready.
2019-10-22 21:14:04 +02:00
Ryan Pavlik
713830338e
st/oxr: Allow wait frame in headless since it does more than just waiting.
2019-10-22 17:29:04 +00:00
Lubosz Sarnecki
6eb1086578
st/prober: Add string functions.
...
Functions for printing and matching xrt_proper_string.
2019-10-22 19:18:47 +02:00
Ryan Pavlik
e2428ee7fa
st/oxr: Handle request exit session and stopping state
2019-10-22 18:00:00 +02:00
Jakob Bornecrantz
0826ff9273
st/oxr: xrCreateActionSpace is fully implemented
2019-10-22 15:19:23 +01:00
Jakob Bornecrantz
937f5d582a
st/oxr: Refactor logging options to instance
2019-10-22 11:47:25 +01:00
Jakob Bornecrantz
ce57fae37d
st/oxr: Actually implement oxr_slog_abort
2019-10-22 11:45:21 +01:00
Jakob Bornecrantz
dcd9bbb4d7
st/gui: Use r8g8b8 or l8 converter
2019-10-19 23:15:49 +01:00
Jakob Bornecrantz
078ac7c59e
st/oxr: Slightly better error message
2019-10-19 22:18:29 +01:00
Jakob Bornecrantz
e56271d968
st/oxr: Add super hacky debug gui
2019-10-15 20:54:57 +01:00
Jakob Bornecrantz
5f1078675d
st/gui: Do not call prober select in debug scene
2019-10-15 20:54:52 +01:00
Jakob Borncrantz
7239282aab
st/prober: Add tracking factory variable tracking
2019-10-15 21:05:37 +02:00
Lubosz Sarnecki
783a36fbcc
st/prober: Add libusb error strings and can open function.
...
The prober will now output libusb errors as string. This patch also adds
a `can_open` function to the prober, that opens and closes device with
libusb to ensure devices can be opened.
This makes it possible to ensure early that permissions on the device
are correct.
2019-10-11 15:56:30 +01:00
Lubosz Sarnecki
6ec8721899
xrt: Add num_devices to prober found interface.
...
In order to access multiple devices the prober found interface needs to
pass the length of the device list. This patch updates the found
interface in all drivers.
2019-10-11 15:56:20 +01:00
Jakob Bornecrantz
a0a4fa3399
st/oxr: Fixes for ball on stick bindings
2019-10-11 15:40:39 +01:00
Drew DeVault
7f16e7230f
oxr_verify.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
d7debdb724
oxr_logger.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
6c275f0aae
oxr_event.cpp: rewrite in C
2019-10-10 22:54:19 +00:00
Drew DeVault
904d58d365
oxr: track list of sessions; poll sessions
2019-10-10 22:51:21 +00:00
Drew DeVault
a736812f63
oxr: mostly implement XR_SESSION_LOSS_PENDING
...
This is missing support for xrPollEvents, which needs to be handled
separately as it's not properly rigged up throughout Monado yet.
2019-10-10 22:51:21 +00:00
Jakob Bornecrantz
bffe802449
t/psmv: Adjust room position in prober instead
2019-10-10 23:47:51 +01:00
Jakob Bornecrantz
102e36efc9
st/gui: Don't include glad directly
2019-10-09 22:11:41 +01:00
Jakob Bornecrantz
1afc4df95c
st/gui: Refactor gui code into it's own state tracker
2019-10-09 21:53:21 +01:00
Jakob Bornecrantz
acd2c50470
aux/math: Rework offset transformation
...
This reverts commit 0d9aaae470
, and changes it.
2019-10-08 11:19:14 +01:00
Jakob Bornecrantz
d8cd9ffcdd
st/prober: Better error printing
2019-10-04 10:32:02 +01:00
Jakob Bornecrantz
ec7e98538c
st/prober: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
76527b73f8
st/oxr: Code style, pointer star location
2019-09-29 11:45:23 +01:00
Jakob Bornecrantz
fcc316d6f1
st/prober: First ball is red
2019-09-27 20:28:04 +01:00
Jakob Bornecrantz
953ce6480d
st/prober: Gate tracking on OpenCV instead of PSMV and PSVR
2019-09-26 22:34:14 +01:00
Drew DeVault
064aef3526
build: port to meson
2019-09-26 15:05:22 +00:00
Ryan Pavlik
24260bb042
st/oxr: Silence meaningless negotiate errors/warnings.
...
Loader just indiscriminately populates all function pointers.
2019-09-24 22:01:05 +00:00
Ryan Pavlik
bbd63ff071
st/oxr: Disable partial implementation of debug extension for now.
2019-09-24 14:16:31 -05:00
Ryan Pavlik
80b0c14590
st/oxr: Paths cannot end with a slash.
2019-09-24 10:20:16 -05:00
Ryan Pavlik
b7aebc2146
st/oxr: Implement oxr_xrStructureTypeToString
2019-09-24 10:20:16 -05:00
Ryan Pavlik
192a219d1c
st/oxr: Implement oxr_xrResultToString
2019-09-24 10:20:16 -05:00
Jakob Bornecrantz
a211b392df
st/prober: Set origin for PSVR tracker as well
...
Spotted by Pete Black.
2019-09-24 01:14:48 +01:00
Jakob Bornecrantz
79eba848ae
st/prober: Add hardcoded tracking system integration for PSMV and PSVR
2019-09-22 12:00:48 +01:00
Jakob Bornecrantz
387bc123f8
xrt: Expand tracking interface
2019-09-21 18:22:06 +01:00
Jakob Bornecrantz
51dafe7b05
xrt: Add usb_dev_class to xrt_prober_device
2019-09-18 13:03:01 +01:00
Jakob Bornecrantz
46389cd6ae
xrt: Send in real prober to auto probers
2019-09-15 23:24:58 +01:00
Jakob Bornecrantz
a673f9b7fc
st/oxr: Add Monado ball on a stick controller
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
79ad85e9b7
st/oxr: Add interaction profile code
...
Not a complete implementation but gets us far enough to
respect the bindings that a application gives us.
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
2337299279
st/oxr: Make sure action keys don't start at zero
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
2db3df9027
st/oxr: Add oxr_sink_logger, the slog-inator!
2019-09-15 15:44:39 +01:00
Jakob Bornecrantz
8d001ca95f
st/oxr: Even more fixes for system xdevs
2019-09-09 21:57:37 +01:00
Jakob Bornecrantz
affd1cb2c1
st/oxr: Tidy
2019-09-09 20:47:43 +01:00
Jakob Bornecrantz
b84413cc35
st/oxr: Fix system xdev init
2019-09-09 20:47:30 +01:00
Jakob Bornecrantz
962de77ca0
st/oxr: Carry around extra xrt_devices
...
Pretty much only used for enabling 3 PS Move Controllers right now.
2019-09-08 10:01:55 +01:00
Jakob Bornecrantz
798ef43342
st/prober: Make sure the usb-product is always filled out
2019-09-07 14:34:20 +01:00
Jakob Bornecrantz
c021199b98
xrt: Add interface to prober to open video devices
2019-09-07 14:34:20 +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
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
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
0f9b5786f3
st/oxr: Remove unnecessary NULL check
2019-08-22 16:46:42 +01: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
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
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
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
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
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
557172f8ae
st/oxr: Silence warning about results in binding code.
2019-08-16 10:54:53 -05: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
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
1fd9936f95
st/oxr: Fix enumerating swapchain formats on headless
2019-08-14 12:28:30 -05: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
Ryan Pavlik
bf45f2bc21
st/oxr: Hack the fixed bindings to add support for the Hydra
2019-07-29 04:08:06 +01:00
Jakob Bornecrantz
9a4fee3896
st/oxr: Code style
2019-07-25 00:57:51 +01:00
Jakob Bornecrantz
d66cd05445
st/oxr: Fix warnings during release builds
2019-07-25 00:53:04 +01:00
Jakob Bornecrantz
e7a933a168
st/oxr: Verify poses in space create 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
b7defdb0ae
st/oxr: Use new prober function helpers
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
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
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
257cf6b5a8
prober: Fix typo
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