MCPcopy Create free account
hub / github.com/KhronosGroup/Vulkan-ValidationLayers / SyncOpSetEvent

Method SyncOpSetEvent

layers/sync/sync_op.cpp:934–949  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

932}
933
934SyncOpSetEvent::SyncOpSetEvent(vvl::Func command, const SyncValidator& sync_state, VkQueueFlags queue_flags, VkEvent event,
935 VkPipelineStageFlags2 stageMask, const AccessContext* access_context)
936 : SyncOpBase(command),
937 event_(sync_state.Get<vvl::Event>(event)),
938 src_exec_scope_(SyncExecScope::MakeSrc(queue_flags, stageMask)),
939 dep_info_() {
940 // Snapshot the current access_context for later inspection at wait time.
941 // NOTE: This appears brute force, but given that we only save a "first-last" model of access history, the current
942 // access context (include barrier state for chaining) won't necessarily contain the needed information at Wait
943 // or Submit time reference.
944 if (access_context) {
945 auto new_context = std::make_shared<AccessContext>(sync_state);
946 new_context->InitFrom(*access_context);
947 recorded_context_ = new_context;
948 }
949}
950
951SyncOpSetEvent::SyncOpSetEvent(vvl::Func command, const SyncValidator& sync_state, VkQueueFlags queue_flags, VkEvent event,
952 const VkDependencyInfo& dep_info, const AccessContext* access_context)

Callers

nothing calls this directly

Calls 2

GetExecScopesFunction · 0.85
InitFromMethod · 0.80

Tested by

no test coverage detected