@@ -107,7 +107,7 @@ static void emitCommandBufferMetadata(Device& layer,
107107 * @param workloadVisitor Visitor for the protobuf encoder.
108108 */
109109static void checkManualFrameBoundary (
110- Device* layer,
110+ Device& layer,
111111 VkQueue queue,
112112 const void * pNext,
113113 bool isLastSubmit,
@@ -118,10 +118,10 @@ static void checkManualFrameBoundary(
118118 if (ext && (ext->flags & VK_FRAME_BOUNDARY_FRAME_END_BIT_EXT))
119119 {
120120 // Emulate a queue present to indicate end of frame
121- auto & tracker = layer-> getStateTracker ();
121+ auto & tracker = layer. getStateTracker ();
122122 tracker.queuePresent ();
123123
124- TimelineProtobufEncoder::emitFrame (* layer, tracker.totalStats .getFrameCount (), getClockMonotonicRaw ());
124+ TimelineProtobufEncoder::emitFrame (layer, tracker.totalStats .getFrameCount (), getClockMonotonicRaw ());
125125
126126 // Emulate a new queue submit if work remains to submit
127127 if (!isLastSubmit)
@@ -148,12 +148,6 @@ VKAPI_ATTR VkResult VKAPI_CALL layer_vkQueuePresentKHR<user_tag>(VkQueue queue,
148148 vku::safe_VkPresentInfoKHR safePresentInfo (pPresentInfo);
149149 auto * newPresentInfo = reinterpret_cast <VkPresentInfoKHR*>(&safePresentInfo);
150150
151- // Remove emulated frame boundaries
152- if (layer->isEmulatingExtFrameBoundary )
153- {
154- vku::RemoveFromPnext (safePresentInfo, VK_STRUCTURE_TYPE_FRAME_BOUNDARY_EXT);
155- }
156-
157151 // Note that we assume QueuePresent is _always_ the end of a frame.
158152 // This is run with the lock held to ensure that all queue submit messages
159153 // are sent sequentially to the host tool
@@ -194,7 +188,7 @@ VKAPI_ATTR VkResult VKAPI_CALL
194188
195189 // Check for end of frame boundary
196190 bool isLast = i == submitCount - 1 ;
197- checkManualFrameBoundary (layer, queue, submit.pNext , isLast, workloadVisitor);
191+ checkManualFrameBoundary (* layer, queue, submit.pNext , isLast, workloadVisitor);
198192 }
199193
200194 // Release the lock to call into the driver
@@ -232,7 +226,7 @@ VKAPI_ATTR VkResult VKAPI_CALL
232226
233227 // Check for end of frame boundary
234228 bool isLast = i == submitCount - 1 ;
235- checkManualFrameBoundary (layer, queue, submit.pNext , isLast, workloadVisitor);
229+ checkManualFrameBoundary (* layer, queue, submit.pNext , isLast, workloadVisitor);
236230 }
237231
238232 // Release the lock to call into the driver
@@ -270,7 +264,7 @@ VKAPI_ATTR VkResult VKAPI_CALL
270264
271265 // Check for end of frame boundary
272266 bool isLast = i == submitCount - 1 ;
273- checkManualFrameBoundary (layer, queue, submit.pNext , isLast, workloadVisitor);
267+ checkManualFrameBoundary (* layer, queue, submit.pNext , isLast, workloadVisitor);
274268 }
275269
276270 // Release the lock to call into the driver
0 commit comments