diff options
| author | Nicolas James <Eele1Ephe7uZahRie@tutanota.com> | 2026-04-05 22:01:11 +1000 |
|---|---|---|
| committer | Nicolas James <Eele1Ephe7uZahRie@tutanota.com> | 2026-04-05 22:01:11 +1000 |
| commit | cf0bced6cd86782e9706acda1b3b6ce6b4e98481 (patch) | |
| tree | 618912ff9025cf0d249e10203b110002a26450f9 /src/strategies/anti_lag/device_strategy.hh | |
| parent | 21e55ae8a1b3ddd4dff6c24a57bdc7d7272fff16 (diff) | |
Implement refactored AL2, todo frame limit
Diffstat (limited to 'src/strategies/anti_lag/device_strategy.hh')
| -rw-r--r-- | src/strategies/anti_lag/device_strategy.hh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/strategies/anti_lag/device_strategy.hh b/src/strategies/anti_lag/device_strategy.hh index 8a9afee..46197b0 100644 --- a/src/strategies/anti_lag/device_strategy.hh +++ b/src/strategies/anti_lag/device_strategy.hh @@ -3,14 +3,31 @@ #include "strategies/device_strategy.hh" +#include <vulkan/vulkan.h> + +#include <optional> +#include <shared_mutex> + namespace low_latency { class DeviceContext; class AntiLagDeviceStrategy final : public DeviceStrategy { + private: + std::shared_mutex mutex{}; + // If this is nullopt don't track the submission. + std::optional<std::uint64_t> frame_index{}; + std::chrono::microseconds delay{}; + bool is_enabled{}; + public: AntiLagDeviceStrategy(DeviceContext& device); virtual ~AntiLagDeviceStrategy(); + + public: + void notify_update(const VkAntiLagDataAMD& data); + + bool should_track_submissions(); }; } // namespace low_latency |
