summaryrefslogtreecommitdiff
path: root/src/core/core_timing.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/core_timing.h')
-rw-r--r--src/core/core_timing.h21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/core/core_timing.h b/src/core/core_timing.h
index d27773009..5c9ee2902 100644
--- a/src/core/core_timing.h
+++ b/src/core/core_timing.h
@@ -14,7 +14,6 @@
14#include <vector> 14#include <vector>
15 15
16#include "common/common_types.h" 16#include "common/common_types.h"
17#include "common/thread.h"
18#include "common/wall_clock.h" 17#include "common/wall_clock.h"
19 18
20namespace Core::Timing { 19namespace Core::Timing {
@@ -146,19 +145,21 @@ private:
146 u64 event_fifo_id = 0; 145 u64 event_fifo_id = 0;
147 146
148 std::shared_ptr<EventType> ev_lost; 147 std::shared_ptr<EventType> ev_lost;
149 Common::Event event{};
150 Common::Event pause_event{};
151 std::mutex basic_lock;
152 std::mutex advance_lock;
153 std::unique_ptr<std::thread> timer_thread;
154 std::atomic<bool> paused{};
155 std::atomic<bool> paused_set{};
156 std::atomic<bool> wait_set{};
157 std::atomic<bool> shutting_down{};
158 std::atomic<bool> has_started{}; 148 std::atomic<bool> has_started{};
159 std::function<void()> on_thread_init{}; 149 std::function<void()> on_thread_init{};
160 150
151 std::vector<std::thread> worker_threads;
152
153 std::condition_variable event_cv;
154 std::condition_variable wait_pause_cv;
155 std::condition_variable wait_signal_cv;
156 mutable std::mutex event_mutex;
157
158 std::atomic<bool> paused_state{};
159 bool is_paused{};
160 bool shutting_down{};
161 bool is_multicore{}; 161 bool is_multicore{};
162 size_t pause_count{};
162 163
163 /// Cycle timing 164 /// Cycle timing
164 u64 ticks{}; 165 u64 ticks{};