diff options
| author | 2022-07-10 10:29:56 +0200 | |
|---|---|---|
| committer | 2022-07-10 10:29:56 +0200 | |
| commit | 25e47738f71e6a6469ff251dd84e28289133dad1 (patch) | |
| tree | c431a3b1ee04fb4da60e08ab21d78a5813e9b528 /src/tests | |
| parent | Merge pull request #8531 from FernandoS27/core-timing-fix-reg (diff) | |
| parent | PR (diff) | |
| download | yuzu-25e47738f71e6a6469ff251dd84e28289133dad1.tar.gz yuzu-25e47738f71e6a6469ff251dd84e28289133dad1.tar.xz yuzu-25e47738f71e6a6469ff251dd84e28289133dad1.zip | |
Merge pull request #8561 from Kelebek1/Audio-CoreTiming
Rework CoreTiming events
Diffstat (limited to 'src/tests')
| -rw-r--r-- | src/tests/core/core_timing.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/tests/core/core_timing.cpp b/src/tests/core/core_timing.cpp index e687416a8..894975e6f 100644 --- a/src/tests/core/core_timing.cpp +++ b/src/tests/core/core_timing.cpp | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | #include <cstdlib> | 9 | #include <cstdlib> |
| 10 | #include <memory> | 10 | #include <memory> |
| 11 | #include <mutex> | 11 | #include <mutex> |
| 12 | #include <optional> | ||
| 12 | #include <string> | 13 | #include <string> |
| 13 | 14 | ||
| 14 | #include "core/core.h" | 15 | #include "core/core.h" |
| @@ -25,13 +26,15 @@ u64 expected_callback = 0; | |||
| 25 | std::mutex control_mutex; | 26 | std::mutex control_mutex; |
| 26 | 27 | ||
| 27 | template <unsigned int IDX> | 28 | template <unsigned int IDX> |
| 28 | void HostCallbackTemplate(std::uintptr_t user_data, std::chrono::nanoseconds ns_late) { | 29 | std::optional<std::chrono::nanoseconds> HostCallbackTemplate(std::uintptr_t user_data, s64 time, |
| 30 | std::chrono::nanoseconds ns_late) { | ||
| 29 | std::unique_lock<std::mutex> lk(control_mutex); | 31 | std::unique_lock<std::mutex> lk(control_mutex); |
| 30 | static_assert(IDX < CB_IDS.size(), "IDX out of range"); | 32 | static_assert(IDX < CB_IDS.size(), "IDX out of range"); |
| 31 | callbacks_ran_flags.set(IDX); | 33 | callbacks_ran_flags.set(IDX); |
| 32 | REQUIRE(CB_IDS[IDX] == user_data); | 34 | REQUIRE(CB_IDS[IDX] == user_data); |
| 33 | delays[IDX] = ns_late.count(); | 35 | delays[IDX] = ns_late.count(); |
| 34 | ++expected_callback; | 36 | ++expected_callback; |
| 37 | return std::nullopt; | ||
| 35 | } | 38 | } |
| 36 | 39 | ||
| 37 | struct ScopeInit final { | 40 | struct ScopeInit final { |