summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/scheduler.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-03-06 14:52:24 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-06-27 17:35:28 +0200
commit1c672128c421ea3141a74f9c6695ecc83231ca30 (patch)
tree67af0f05adcdfce6aa1bd75d609e1c09190d54a7 /src/core/hle/kernel/scheduler.h
parentNVDRV: Remove frame limiting as Host Timing already takes care. (diff)
downloadyuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar.gz
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar.bz2
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar.lz
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar.xz
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.tar.zst
yuzu-1c672128c421ea3141a74f9c6695ecc83231ca30.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/scheduler.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/hle/kernel/scheduler.h b/src/core/hle/kernel/scheduler.h
index f73ca777e..728cca802 100644
--- a/src/core/hle/kernel/scheduler.h
+++ b/src/core/hle/kernel/scheduler.h
@@ -15,6 +15,10 @@
#include "core/hardware_properties.h"
#include "core/hle/kernel/thread.h"
+namespace Common {
+ class Fiber;
+}
+
namespace Core {
class ARM_Interface;
class System;
@@ -247,12 +251,17 @@ private:
*/
void UpdateLastContextSwitchTime(Thread* thread, Process* process);
+ static void OnSwitch(void* this_scheduler);
+ void SwitchToCurrent();
+
std::shared_ptr<Thread> current_thread = nullptr;
std::shared_ptr<Thread> selected_thread = nullptr;
std::shared_ptr<Thread> current_thread_prev = nullptr;
std::shared_ptr<Thread> selected_thread_set = nullptr;
std::shared_ptr<Thread> idle_thread = nullptr;
+ std::shared_ptr<Common::Fiber> switch_fiber = nullptr;
+
Core::System& system;
u64 last_context_switch_time = 0;
u64 idle_selection_count = 0;