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

Method Begin

layers/sync/sync_op.cpp:1298–1316  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1296 return skip;
1297}
1298AccessContext* ReplayState::RenderPassReplayState::Begin(VkQueueFlags queue_flags, const SyncOpBeginRenderPass& begin_op_,
1299 const AccessContext& external_context) {
1300 const RenderPassAccessContext* rp_context = begin_op_.GetRenderPassAccessContext();
1301 assert(rp_context);
1302
1303 begin_op = &begin_op_;
1304 replay_context = &rp_context->GetSubpassContexts()[0];
1305 subpass = 0;
1306 subpass_contexts = InitSubpassContexts(queue_flags, *rp_context->GetRenderPassState(), external_context);
1307
1308 // Replace the Async contexts with the the async context of the "external" context
1309 // For replay we don't care about async subpasses, just async queue batches
1310 for (AccessContext& context : GetSubpassContexts()) {
1311 context.ClearAsyncContexts();
1312 context.ImportAsyncContexts(external_context);
1313 }
1314
1315 return &subpass_contexts[0];
1316}
1317
1318AccessContext* ReplayState::RenderPassReplayState::Next() {
1319 subpass++;

Callers 1

Calls 6

InitSubpassContextsFunction · 0.85
GetRenderPassStateMethod · 0.80
ClearAsyncContextsMethod · 0.80
ImportAsyncContextsMethod · 0.80
GetSubpassContextsMethod · 0.45

Tested by

no test coverage detected