From cf0bced6cd86782e9706acda1b3b6ce6b4e98481 Mon Sep 17 00:00:00 2001 From: Nicolas James Date: Sun, 5 Apr 2026 22:01:11 +1000 Subject: Implement refactored AL2, todo frame limit --- src/strategies/anti_lag/queue_strategy.hh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/strategies/anti_lag/queue_strategy.hh') diff --git a/src/strategies/anti_lag/queue_strategy.hh b/src/strategies/anti_lag/queue_strategy.hh index 81ae653..3887474 100644 --- a/src/strategies/anti_lag/queue_strategy.hh +++ b/src/strategies/anti_lag/queue_strategy.hh @@ -3,14 +3,33 @@ #include "strategies/queue_strategy.hh" +#include +#include +#include + namespace low_latency { class QueueContext; class AntiLagQueueStrategy final : public QueueStrategy { + private: + std::mutex mutex; + std::deque> pending_submissions; + public: AntiLagQueueStrategy(QueueContext& queue); virtual ~AntiLagQueueStrategy(); + + public: + virtual void notify_submit(const VkSubmitInfo& submit, + std::unique_ptr submission) override; + virtual void notify_submit(const VkSubmitInfo2& submit, + std::unique_ptr submission) override; + + public: + // Wait for all pending submissions to complete. Resets pending submissions + // once done. + void await_complete(); }; } // namespace low_latency -- cgit v1.2.3