From 0deb469d5a7c9a16179139dcff74a54aac1791a0 Mon Sep 17 00:00:00 2001 From: Nicolas James Date: Sat, 14 Feb 2026 14:05:26 +1100 Subject: commit wip --- src/queue_context.hh | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'src/queue_context.hh') diff --git a/src/queue_context.hh b/src/queue_context.hh index a6f43e5..3df6af4 100644 --- a/src/queue_context.hh +++ b/src/queue_context.hh @@ -10,7 +10,6 @@ #include #include #include -#include #include namespace low_latency { @@ -35,24 +34,26 @@ class QueueContext final : public Context { struct Submission { const std::unordered_set signals; const std::unordered_set waits; - const std::uint64_t target_semaphore_sequence; - const std::shared_ptr timestamp_handle; + const std::uint64_t sequence; + + const std::shared_ptr start_handle; + const std::shared_ptr end_handle; }; std::deque> submissions; // In flight frames! // These might come from different contexts. struct Frame { - const QueueContext& start_context; - const std::shared_ptr start; - const std::uint64_t target_start_sequence; - const QueueContext& end_context; - const std::shared_ptr end; - const std::uint64_t target_end_sequence; + struct Timepoint { + const QueueContext& context; + const std::shared_ptr handle; + const std::uint64_t sequence; + }; + + const Timepoint start; + const Timepoint end; }; - // These can be null, it means we made presented without finding the - // timestamps associated with the present. std::deque> in_flight_frames; public: @@ -61,12 +62,12 @@ class QueueContext final : public Context { virtual ~QueueContext(); public: - void notify_submit(std::span infos, - const std::uint64_t target_semaphore_sequence, - std::shared_ptr&& handle); - void notify_submit(std::span infos, - const std::uint64_t target_semaphore_sequence, - std::shared_ptr&& handle); + void + notify_submit(const VkSubmitInfo& info, const std::uint64_t& sequence, + const std::shared_ptr head_handle, + const std::shared_ptr tail_handle); + + // TODO submit2 void notify_present(const VkPresentInfoKHR& info); -- cgit v1.2.3