aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/command_classes/sync_manager.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2022-01-30 10:31:13 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2022-10-06 21:00:52 +0200
commit668e80a9f42fb4ce0e16f6381d05bcbd286b2da1 (patch)
treea1c668d6c3d00eade849b1d31dba4116095e4c12 /src/video_core/command_classes/sync_manager.cpp
parente44ac8b821833672f7c99ad22dbe57ac9403279d (diff)
VideoCore: Refactor syncing.
Diffstat (limited to 'src/video_core/command_classes/sync_manager.cpp')
-rw-r--r--src/video_core/command_classes/sync_manager.cpp43
1 files changed, 0 insertions, 43 deletions
diff --git a/src/video_core/command_classes/sync_manager.cpp b/src/video_core/command_classes/sync_manager.cpp
deleted file mode 100644
index 67e58046f..000000000
--- a/src/video_core/command_classes/sync_manager.cpp
+++ /dev/null
@@ -1,43 +0,0 @@
-// SPDX-FileCopyrightText: Ryujinx Team and Contributors
-// SPDX-License-Identifier: MIT
-
-#include <algorithm>
-#include "sync_manager.h"
-#include "video_core/gpu.h"
-
-namespace Tegra {
-SyncptIncrManager::SyncptIncrManager(GPU& gpu_) : gpu(gpu_) {}
-SyncptIncrManager::~SyncptIncrManager() = default;
-
-void SyncptIncrManager::Increment(u32 id) {
- increments.emplace_back(0, 0, id, true);
- IncrementAllDone();
-}
-
-u32 SyncptIncrManager::IncrementWhenDone(u32 class_id, u32 id) {
- const u32 handle = current_id++;
- increments.emplace_back(handle, class_id, id);
- return handle;
-}
-
-void SyncptIncrManager::SignalDone(u32 handle) {
- const auto done_incr =
- std::find_if(increments.begin(), increments.end(),
- [handle](const SyncptIncr& incr) { return incr.id == handle; });
- if (done_incr != increments.cend()) {
- done_incr->complete = true;
- }
- IncrementAllDone();
-}
-
-void SyncptIncrManager::IncrementAllDone() {
- std::size_t done_count = 0;
- for (; done_count < increments.size(); ++done_count) {
- if (!increments[done_count].complete) {
- break;
- }
- gpu.IncrementSyncPoint(increments[done_count].syncpt_id);
- }
- increments.erase(increments.begin(), increments.begin() + done_count);
-}
-} // namespace Tegra