Commit graph

18 commits

Author SHA1 Message Date
Christoph Haag c24e482e5e st/oxr: Make OpenXR timestamps relative to service startup
This solves a problem where OpenXR timestamps could become invalid
(negative) in certain circumstances:

The timestamps that the OpenXR state tracker returned were offset such
that they appeared to start at OpenXR application startup time.

However monado-service is a long running service using system timestamps.
Because of this, if monado-service started work using a system timestamp
acquired before an OpenXR application started, then this system timestamp
could not be converted into an OpenXR without becoming invalid.

With this change, the OpenXR timestamps for OpenXR applications are offset
such that they appear to start at monado-service startup time instead.

As a side effect, all OpenXR applications connected to the same
monado-service instance will receive timestamps from the same domain.
2022-08-08 15:52:18 +00:00
Julian Petrov 1debb2e015 u/time: Implement QPC related functions 2022-06-09 14:48:27 -04:00
Jakob Bornecrantz fa988a7f74 u/time: Fix conversion warning 2022-05-02 17:16:04 +01:00
Ryan Pavlik 4939bc2f59 a/util: Manual fixes to clang-tidy issues. 2022-04-13 01:10:54 +01:00
Jakob Bornecrantz c876087ee7 u/time: Add helper comparising functions 2021-04-07 00:50:10 +01:00
Jakob Bornecrantz 55c7690185 u/time: Make defines more readable and add more defines 2021-02-24 13:55:07 +00:00
Jakob Bornecrantz 69eebb49e2 u/time: Use double for time conversion 2021-02-24 04:14:51 +00:00
Jakob Bornecrantz 2b996f30c4 xrt: Reflow after column change 2021-01-15 13:50:32 +00:00
Christoph Haag 8f3816a5fc u_time: Make time_s_to_ns take double, not floa 2021-01-11 23:50:01 +00:00
Ryan Pavlik b855fd1ae2 a/util: Appease clang-tidy with a define for ns per second 2020-11-09 16:18:00 -06:00
Ryan Pavlik f7a132e635 u/time: Fix overflow. 2020-09-18 17:15:33 +01:00
Jakob Bornecrantz ef41cf2088 u/time: Use a very large hammer to "fix" time_state 2020-05-27 17:50:06 +01:00
Ryan Pavlik fca21e83b0 aux/util: Provide a conversion function from CLOCK_MONOTONIC nanoseconds to adjusted time. 2020-03-02 12:34:19 -06: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
Jakob Bornecrantz 0987927343 aux/util: Code style, pointer star location 2019-09-29 11:45:23 +01:00
Jakob Bornecrantz d1b91e5451 aux/util: Group the files and structs in documentation 2019-04-06 13:04:13 +01:00
Ryan Pavlik 94cd1908db aux/util: Add time_ns_to_s and time_s_to_ns 2019-03-25 12:28:54 -05:00
Jakob Bornecrantz 15a97422ba xrt: Add all of Monado 2019-03-18 05:52:32 +00:00