MCPcopy Create free account
hub / github.com/GameTechDev/PresentMon / EnqueueQueuePacket

Method EnqueueQueuePacket

PresentData/GpuTrace.cpp:442–461  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

440}
441
442void GpuTrace::EnqueueQueuePacket(uint64_t hContext, uint32_t sequenceId, uint32_t processId, uint64_t timestamp, bool isWaitPacket)
443{
444 auto contextIter = mContexts.find(hContext);
445 if (contextIter != mContexts.end()) {
446 auto context = &contextIter->second;
447
448 // Ensure that the process id is registered with this context, for
449 // cases where the context was created before the capture was started
450 // so we didn't see a Context_Start event.
451 if (context->mPacketTrace == nullptr) {
452 SetContextProcessId(context, processId);
453 }
454
455 // Use queue packet duration as a proxy for dma duration for cases we
456 // don't get dma events for (HWS).
457 if (context->mIsHwQueue) {
458 EnqueueWork(context, sequenceId, timestamp, isWaitPacket);
459 }
460 }
461}
462
463void GpuTrace::CompleteQueuePacket(uint64_t hContext, uint32_t sequenceId, uint64_t timestamp)
464{

Callers 1

HandleDxgkQueueSubmitMethod · 0.80

Calls 1

endMethod · 0.45

Tested by

no test coverage detected